Quickstart
Install BINA, start the API and console, and read a sample bulletin in about five minutes.
By the end of this page you will have the BINA API running on your machine, the console open in a browser, and a bulletin response in your terminal. You do not need any API keys: a fresh checkout serves a built-in sample inventory modelled on the July 2026 bulletin.
#Before you begin
- Node.js 20, 22, 24 or 26. The native
better-sqlite3module does not build on Node 18. Check withnode -v. - npm, using the committed lockfile.
- About 2 GiB free disk space if you later load live data. BINA refuses to fetch when free space falls below that.
#1. Install
Install from the repository root so the native module is built for your Node version:
npm install#2. Start the API and the console
npm run devThis starts two processes:
| Process | Address |
|---|---|
| API | http://127.0.0.1:8787 |
| Console | http://127.0.0.1:5173 |
If port 5173 is taken, run CLEARY_WEB_PORT=5180 npm run dev instead.
#3. Check that the API is up
curl -s http://127.0.0.1:8787/v1/radar/status | python3 -m json.toolYou should see "mode": "fixture". That means BINA is serving the sample, not live publications.
#4. Fetch a bulletin
Ask for everything published in July 2026:
curl -s "http://127.0.0.1:8787/v1/radar/bulletin?from=2026-07-01&to=2026-07-31" | python3 -m json.tool | head -30The header object counts what was reviewed, and important lists the level 1 and 2 cases. Each card has a reportPath you can open next.
#5. Open a case report
curl -s http://127.0.0.1:8787/v1/radar/cases/DMA.100075/report | python3 -m json.tool | head -40Or open the same case in the console: http://127.0.0.1:5173/?case=DMA.100075&month=2026-07.
#Next steps
- Follow the tutorial Read your first bulletin to understand what each part of the response means.
- Load live decisions to replace the sample with real publications.
- Configure hosted extraction to let a model propose parties and summaries.