Skip to content

Latest commit

 

History

History
111 lines (82 loc) · 2.84 KB

File metadata and controls

111 lines (82 loc) · 2.84 KB

AETHERA — Quickstart

Prerequisites

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

One-time setup

# Clone & enter the repo
cd AETHERA_2.0

# Install backend (editable)
cd backend && pip install -e . && cd ..

# Install frontend
cd frontend && npm install && cd ..

Start everything

make dev

Or directly:

python scripts/start_all.py

This single command:

  1. Starts Docker (PostgreSQL + PostGIS + pgvector, Redis)
  2. Waits for both databases to be healthy
  3. Initializes the DB schema (first run only)
  4. Starts the FastAPI backend (port 8000)
  5. Starts the Celery worker
  6. 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

Stop everything

make stop

Or:

python scripts/stop_all.py

Other commands

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

PDF Output

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 xhtml2pdf

For full setup details including WeasyPrint on Windows, see docs/PDF_SETUP.md.

Key URLs

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