Quickstart
Start the development stack with make dev-all. The target starts local infrastructure, applies database migrations, seeds demo users, and launches the API, console, site, worker, and Taskiq dashboard.
Clone the repository
git clone https://github.com/kyndex-ai/kyndex.git
cd kyndexThe root Makefile orchestrates the local development stack.
Create your environment file
cp .env.example .envThe default target uses local Supabase and Redis. make dev-all starts them and syncs the local Supabase connection values into .env. The default model is Anthropic, so set ANTHROPIC_API_KEY in.env before querying. make dev-all syncs the local database connection values:
| Variable | Why it matters | Example |
|---|---|---|
| DATABASE_URL | Migration and seed scripts use the superuser connection. | postgresql+asyncpg://postgres:... |
| DATABASE_URL_APP | Runtime connection used by the API. | postgresql+asyncpg://kyndex_app:... |
| DATABASE_URL_WORKER | Runtime connection used by the worker. | postgresql+asyncpg://kyndex_worker:... |
| SUPABASE_URL | Tenant auth and database base URL. | http://127.0.0.1:54321 (local) |
| SUPABASE_ANON_KEY | Console/browser auth; synced from local Supabase. | eyJhbGciOi... |
| SUPABASE_SERVICE_ROLE_KEY | Seed scripts; synced from local Supabase. | eyJhbGciOi... |
The checked-in example selects an Anthropic model. Requests sent to hosted model providers leave your local environment. For local inference, configure an ollama/* model and ensure Ollama has the selected model.
Start the local stack
make dev-allIt installs dependencies, starts Redis and local Supabase (and Ollama when configured), applies migrations, seeds users, and starts the API, console, site, worker, and dashboard. Default ports are API 8000, console 3000, site 3001, and dashboard 8080. Use:
make status
make dev-stopSee the Makefile for individual targets such as make api and make site.
Sign in with a seeded demo account
Open http://localhost:3000/auth/login and use a local seed account. For example:
Email: org.admin@kyndex.dev
Password: Admin1234!
These seed accounts and their shared password are for local development only. Do not use them in any shared or deployed environment. The seed script also creates department-scoped Engineering and Marketing accounts for testing access boundaries.
Upload a document and ask a question
In the console, open Documents, upload a PDF or text file, then switch to Query and ask a question about it.
Ingestion runs in the background. When relevant content is retrieved, answers include source citations from indexed documents.