NVEIL Backend¶
Microservices backend for the NVEIL visualization platform
The NVEIL backend is composed of four FastAPI services sharing a PostgreSQL database and a centralized workspace filesystem.
Services¶
-
Server Service — Port 8000
Core orchestration: user accounts, rooms, dashboards, WebSocket events, and proxy to other services.
-
AI Service — Port 8100
LLM-powered chat processing via LangGraph workflows. Classifies intent, generates visualization specs, and runs ASP constraint solving.
-
File Service — Port 8200
File CRUD, workspace symlink management, and room data provisioning.
-
Viz Service — Trame
Interactive visualization rendering. Spawned per-room as containers, supports Plotly, VTK, and DeckGL backends.
Service Dependencies¶
graph TB
Frontend["Frontend (React)"]
Server["Server Service :8000"]
AI["AI Service :8100"]
File["File Service :8200"]
Viz["Viz Service (Trame)"]
PG["PostgreSQL"]
FS["Workspace Filesystem"]
LLM["Google Gemini"]
Pool["Room Pool (Docker/K8s)"]
Frontend -->|HTTP/WS| Server
Server -->|httpx| AI
Server -->|httpx| File
Server -->|WS proxy| Viz
Server --> PG
Server --> Pool
AI --> PG
AI --> LLM
AI --> FS
File --> PG
File --> FS
Pool --> Viz
Viz --> FS
Quick Links¶
- Architecture Overview — Service map, database schema, auth, workspace
- Environment Variables — Configuration reference
- Shared Utilities — Workspace, security, HTTP client, logger