Run it yourself
Clone Najimi, start Postgres and storage, add a Qloo key, and run the app, the worker and these docs on your machine.
The code is open source (MIT): github.com/Blockchain-Oracle/najimi.
You'll need
- Node.js 22.18 or newer, and pnpm 11
- Docker, for Postgres and storage
- A Qloo API key and an OpenAI key (the agent's answers run on OpenAI)
Get the code
git clone https://github.com/Blockchain-Oracle/najimi.git
cd najimi
pnpm installFill in .env
cp .env.example .envOnly three settings are required: DATABASE_URL (already pointing at the local Postgres), BETTER_AUTH_SECRET (any random 32+ characters) and BETTER_AUTH_URL (http://localhost:3310). Add QLOO_API_KEY and OPENAI_API_KEY for the taste and the agent. Everything else switches on a feature; see Integrations for the full list.
Start Postgres and storage
pnpm services:upPostgres 17 on port 54330 and RustFS (S3-compatible) on 9300.
Run everything
pnpm devThe app on localhost:3310, these docs on localhost:3311, and the worker, which applies the database migrations when it starts.
Checks
pnpm run ciBiome, type checks across every package, and every production build.
Deploying
Each app has its own Dockerfile: apps/web (Next.js standalone, health at /api/health), apps/worker (with ffmpeg; runs migrations at start), apps/social-bridge (Python) and apps/docs (a static export served by nginx). infra/compose.prod.yaml runs Postgres, a one-shot migration, the web app, the worker and the docs together. Najimi itself runs on a single Coolify server.
Two things to know
Live events use Server-Sent Events: if your proxy compresses responses, switch compression off for text/event-stream (or for the web app), or live updates will arrive late. And hotels only switch on with a live Nuitee key; a sandbox key keeps them off.