npx create-ragen-app — scaffolds the entire stack locally: Postgres, Qdrant, the model gateway, and all four applications. Budget about ten minutes, most of it Docker pulling images.
Prerequisites
Before you begin, make sure you have the following in place:- Node.js 24.x — the installer checks your version before it clones anything. Running on an older version produces a tree that fails later, far from the actual cause.
- Docker and Docker Compose — both must be running. The backing services (Postgres, Qdrant, Temporal, Docling, Redis) all run in containers.
- ~8 GB of RAM available to Docker. Document parsing is the hungry part; you can drop Docling later if you need to trim memory.
- An LLM API key — OpenAI or Anthropic to start chatting immediately. You can also point Ragen at models on your own hardware, but that is separate deployment work.
Steps
1
Scaffold your installation
Run the following command in your terminal to scaffold a new Ragen instance:The wizard clones the repository, generates every secret it safely can, prompts you for a model provider key, asks how you want storage and encryption configured, starts the backing services in Docker, and runs the first-time setup — the Prisma client, schema migrations, and the seed data. It does not start the applications themselves; that is the next step.
2
Start the apps
Move into your new directory and start each application in a separate terminal. There is no single root Once all three required processes are running, your local stack looks like this:
dev script because these are separate processes with separate lifetimes.- Web app (required)
- API server (required)
- Worker (for document uploads)
- Admin panel (optional)
apps/worker is what turns an uploaded file into searchable chunks. Without it, an upload returns 200 and the document sits in a pending state indefinitely — nothing in the web UI explains why. Start the worker in a third terminal before uploading any documents.3
Create your first account
Open http://localhost:3000 in your browser. A fresh install redirects you to a first-run setup page where you choose the platform administrator’s name, your organization name, and a password. That account can then create all other accounts on the platform.
If anything required is still misconfigured, the setup page lists the missing environment variable by name and tells you what breaks without it — rather than showing a stack trace. An unreachable database is reported the same way.
4
Upload a document and ask a question
With your account created, you are ready to build your first knowledge base and query it.
1
Create a project
A project is a self-contained knowledge base with its own documents and its own assistant instructions. Create one from the main navigation.
2
Upload a document
Upload any supported file (PDF, DOCX, XLSX, CSV, Markdown, plain text, images, and more) to your project. Parsing happens asynchronously in the worker — watch the document’s status indicator to see when it becomes searchable.
3
Ask a question in chat
Open the chat for your project and ask a question. The answer is grounded in the document you uploaded, with citations linking back to the exact source passages.
Verify your installation
Once everything is running, confirm each service is healthy:If document ingestion appears to hang, check the worker log first. The upload endpoint returns
200 as soon as the file is stored — parsing is asynchronous, and a parsing failure is only visible in the worker log and in the document’s status field in the UI.Next steps
Self-Hosting
The manual deployment path, what each service does, and the settings that matter most in production — encryption, storage, and the embedding model.
API Quickstart
Make your first call against the instance you just built using the TypeScript SDK.
Concepts
Understand projects, organizations, RAG, and access control before you go further.
Configuration
Every environment variable, which app reads it, and what breaks when it is missing.