Skip to main content

Prerequisites

  • Docker and Docker Compose v2+
  • At least 2 GB of available RAM

1. Clone the Repository

git clone https://github.com/myfoxit/ondoki-web.git
cd ondoki-web

2. Configure Environment

cp .env.example .env
Generate the required secrets:
# JWT signing key
openssl rand -hex 32
# Paste the output as JWT_SECRET in .env

# Encryption key for API keys at rest
python3 -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
# Paste the output as ONDOKI_ENCRYPTION_KEY in .env
Edit .env and set at minimum:
VariableValue
JWT_SECRETOutput from openssl rand -hex 32
ONDOKI_ENCRYPTION_KEYOutput from the Fernet key generator
POSTGRES_PASSWORDA strong password (change from the default)

3. Start the Stack

docker compose up -d
This starts:
  • PostgreSQL 16 with pgvector (vector search)
  • Redis 7 (caching and message queue)
  • Gotenberg 8 (PDF export)
  • FastAPI backend (API server)
  • Celery media worker (video/audio processing)
  • React frontend (web UI)

4. Open ondoki

Register your first user account at http://localhost. The first user becomes the project owner.

5. Configure AI (Optional)

Navigate to Project Settings → AI/LLM and enter your API key:
ProviderWhat You Need
OpenAIAPI key from platform.openai.com
AnthropicAPI key from console.anthropic.com
OllamaLocal Ollama instance URL (e.g., http://host.docker.internal:11434)
AI enables: inline editor commands, context-aware chat, auto-annotation of workflow steps, and auto-generation of titles/summaries/tags.
AI features are optional. ondoki works fully without an LLM configured — you just won’t have AI-powered features like auto-annotation and chat.

What’s Next?