Core Components
API Server
FastAPI application handling REST endpoints, WebSocket streaming, and authentication.
Web Frontend
Next.js application for viewing recordings, managing datasets, and monitoring tasks. Served by the API server by default, but can be run separately in dev mode.
Client API
Python library for streaming robot data to the server.
Task Executor
Background task processing for dataset generation and video encoding. Runs in-process by default, can be externalised to Celery for distributed execution.
Database
SQLite by default for local development. Can be externalised to PostgreSQL with pgvector for semantic search.
Message Broker
In-process message broker by default. Can be externalised to Redis for distributed task execution and streaming.
File Storage
Local filesystem storage for recordings, video streams, datasets, and exports.
Next Steps
Web App Development
Contribute to Repoch development