| Tool | Version | Install |
|---|---|---|
| Docker Desktop | 4.x+ | docker.com/get-docker |
| Python | 3.11+ | python.org |
| Node.js | 18+ | nodejs.org |
| Make | any | Pre-installed on macOS/Linux; on Windows use make via Git Bash or run the Python scripts directly |
# Clone & enter the repo
cd AETHERA_2.0
# Install backend (editable)
cd backend && pip install -e . && cd ..
# Install frontend
cd frontend && npm install && cd ..make devOr directly:
python scripts/start_all.pyThis single command:
- Starts Docker (PostgreSQL + PostGIS + pgvector, Redis)
- Waits for both databases to be healthy
- Initializes the DB schema (first run only)
- Starts the FastAPI backend (port 8000)
- Starts the Celery worker
- Starts the Vite frontend dev server (port 3000)
When you see this, you're ready:
==================================================
AETHERA is ready
==================================================
✓ PostgreSQL localhost:55432
✓ Redis localhost:6379
✓ FastAPI http://localhost:8000/docs
✓ Celery worker running
✓ Frontend http://localhost:3000
make stopOr:
python scripts/stop_all.py| Command | Description |
|---|---|
make dev |
Start the full stack |
make dev-backend |
Start without the frontend |
make stop |
Graceful shutdown |
make restart |
Stop then start |
make status |
Check which services are running |
make api |
Start only the FastAPI server |
make celery |
Start only the Celery worker |
make install |
Install all dependencies |
Every pipeline run produces eia_report.pdf alongside the Markdown and DOCX reports. The PDF backend is selected automatically:
| Backend | Quality | Requirement |
|---|---|---|
| WeasyPrint (preferred) | High (CSS Paged Media, web fonts) | GTK3 / Pango native libraries |
| xhtml2pdf (fallback) | Good (base-14 fonts, tables, colors) | Pure Python — works everywhere |
On Windows, xhtml2pdf is used by default because WeasyPrint requires GTK. On Linux/macOS, WeasyPrint typically works out of the box.
# Both are installed as project dependencies:
pip install weasyprint xhtml2pdfFor full setup details including WeasyPrint on Windows, see docs/PDF_SETUP.md.
| Service | URL |
|---|---|
| API docs (Swagger) | http://localhost:8000/docs |
| API (raw) | http://localhost:8000/ |
| Frontend | http://localhost:3000 |
| PostgreSQL | postgresql://aethera:aethera@localhost:55432/aethera |
| Redis | redis://localhost:6379/0 |