AI-powered document management system where chat with AI agent is the primary interface.
- Docker & Docker Compose
- Python 3.12+ & uv
- Node.js 20+
cp .env.example .env
# Edit .env — set LLM_API_KEY (Anthropic key for Claude)docker compose up -d postgres redis minio elasticsearchcd backend
uv sync --dev
uv run alembic upgrade head # Run migrations
uv run python -m app.seed # Seed demo data
uv run uvicorn app.main:app --reload --port 8000cd frontend
npm install
npm run dev # http://localhost:3000- Email: admin@romashka.ru
- Password: password123
docker compose up
# Backend: http://localhost:8000
# Frontend: http://localhost:3000
# MinIO Console: http://localhost:9001- Backend: Python 3.12, FastAPI, SQLAlchemy 2.0, LangGraph
- Frontend: React 18, TypeScript, Vite, TailwindCSS, shadcn/ui
- AI: LangGraph supervisor + sub-agents, LiteLLM (pluggable LLM)
- Data: PostgreSQL 16 + pgvector, Redis 7, MinIO (S3), Elasticsearch 8
- Multi-tenant: PostgreSQL RLS, JWT-based tenant isolation
POST /api/v1/auth/register— RegisterPOST /api/v1/auth/login— LoginGET /api/v1/auth/me— Current userPOST /api/v1/chat/message— Send chat messagePOST /api/v1/chat/stream— SSE streaming chatGET /api/v1/documents— List documentsPOST /api/v1/documents— Create documentPOST /api/v1/documents/{id}/upload— Upload fileGET /health— Health check
make test # Run tests
make lint # Lint backend + frontend
make format # Format code
make migrate # Run DB migrationsProprietary