Skip to content

Getting Started

Prerequisites

  • Conda or Miniconda
  • Node.js 22+
  • (Optional) CUDA GPU for accelerated OCR/embeddings

Quick Setup

bash
git clone git@github.com:sylvanding/omelette.git && cd omelette

# Backend
conda env create -f environment.yml && conda activate omelette
cp .env.example .env
cd backend && alembic upgrade head
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 &

# Frontend
cd ../frontend && npm install && npm run dev -- --port 3000

Open http://localhost:3000.

Configuration

Key environment variables in .env:

VariablePurposeDefault
LLM_PROVIDERLLM backendmock (no API key needed)
OPENAI_API_KEYOpenAI key(empty)
ANTHROPIC_API_KEYAnthropic key(empty)
DATABASE_URLDatabase pathsqlite:///./data/omelette.db
DATA_DIRFile storagedata
PDF_PARSERPDF engineauto

With LLM_PROVIDER=mock, no API keys are required for development.

First Steps

  1. Create a project → Knowledge Bases → New
  2. Add papers → Search & Add or upload PDFs
  3. Explore → Browse, search, analytics
  4. Chat → Ask questions about your literature in Playground

Project Structure

omelette/
├── backend/     # FastAPI (Python 3.12) · 861 tests
├── frontend/    # React SPA (TypeScript) · 273 tests
├── e2e/         # Playwright · 39 tests
├── docs/        # VitePress documentation
└── scripts/     # Ralph agent workflow

Released under the MIT License.