Draft
svc-datahub — GeoGit Data Hub Backend
Clientnovameraactive
Express + TypeScript + PostgreSQL backend for GeoGit ("GitHub for geo-data") — the versioned, provenance-first data platform for Novamera project files. Manages ingestion, auto-sort, versioning, and project history so any team member can understand in under a minute what data exists and why.
flowchart LR
FE[fe-datahub
React SPA] --> API[svc-datahub
Express on Fargate]
API --> DB[(PostgreSQL
Aurora)]
API --> S3[(S3
file storage)]
API --> NOTIF[Notifications
email / webhook]
style API fill:#EDEDFF,stroke:#3B54F7
style DB fill:#F3EDFF,stroke:#8A54E8
style S3 fill:#F3EDFF,stroke:#8A54E8
Core capabilities: file ingestion pipeline (upload → auto-classify → version), project data library, role-based access (Novamera crew + external clients), change history with provenance.
- Stack: Node.js · Express · TypeScript · PostgreSQL (Aurora) · S3
- Auth: JWT; role hierarchy — project-scoped permissions for field, ops, and client archetypes.
- Design principles: Context is King (file + conversation captured together) · Wait Without Forgetting (async ingestion, graceful large-file handling) · Be The Librarian (auto-sort so uploaders don't bear classification burden).
- Built on: the ecs-service pattern.
- Envs:
dev1.novamera.io/datahub·stg1.novamera.io/datahub·app.novamera.io. - Specs: full product design lives in
novamera.svc-datahubunderdocs/(vision, user roles, epics, data contracts, arch decisions, glossary).