SureCentric Analytics Stack
This stack is under active development and is not yet started in the default local environment.
The SureCentric Analytics stack provides the data visualization and analytics layer for the SureCentric Platform:
- Apache Superset — browser-based dashboards and charts for clinical data
- DuckDB — in-process analytical SQL engine for fast local query execution
- Card API — Node.js API that powers the card/widget system in the SureCentric Client
- Redis — cache layer for Superset session and query result caching
This stack is designed to be launched from the SureCentric Desktop Project Desktop — a Dashboards card (later phase) will embed Superset or surface analytics cards directly.
Docker Compose Stack: surecentric
| Container | Image | Port | Role |
|---|---|---|---|
superset_app | apache/superset:4.0.0 | 8088→8088 | Superset dashboard server |
superset_init | apache/superset:4.0.0 | — | One-time Superset initialization |
superset_db | postgres:17 | 5432→5432 | Superset metadata database |
superset_cache | redis:7 | 6379→6379 | Superset cache |
card-api | node:20-alpine | 3099→3099 | Card API for SureCentric Client widgets |
duckdb | datacatering/duckdb:v1.2.1 | — | Analytical query engine |
Start the stack
docker compose -f surecentric/docker-compose.yml up
This stack is not started by default in the development environment. Start it only when working on analytics or dashboard features.
Superset
Apache Superset 4.0.0 is the analytics frontend. It connects to data sources including:
- The Nuxeo 2025 PostgreSQL database (for clinical content metadata)
- The SureNetwork PostgreSQL database (for project/hub/person data)
- DuckDB for local analytical queries
- External data sources via SureConnect (OpenAPI connectors)
Superset is accessed at http://localhost:8088 when the analytics stack is running.
SureCentric Desktop integration
Superset is planned to be embedded in the SureCentric Client via iframe — similar to the Nuxeo Web UI File Explorer. The Project Desktop Dashboards card (later phase) will launch a Superset view inside the SureCentric shell.
DuckDB
DuckDB v1.2.1 provides fast in-process analytical SQL for:
- Local query execution against imported data
- Schema Builder data mode queries
- Ad-hoc exploration without a full database server
DuckDB integrates with the SureCentric Schema Builder and is accessible from the Card API.
Card API
The Card API (Node.js, port 3099) powers the card/widget system in the SureCentric Client. Cards are configurable data panels that surface analytics, queries, and content summaries in the Project Desktop and other platform views.
The Card API connects to DuckDB and Superset to fetch and cache card data for the Angular 16 frontend.
Future Integration with SureCentric Platform
Database consolidation: The Superset metadata database (PostgreSQL 17) is a candidate for consolidation. Target: ≤ 2 PostgreSQL databases across the full platform. The Superset DB may be merged with a shared platform database or replaced by a lightweight embedded metadata store. Until consolidation, it runs independently.
Card API evolution: As SureNetwork Global UI matures, the Card API may be absorbed into the SureNetwork API layer or exposed through APISIX as a unified backend service — reducing the number of independent Node.js services.
DuckDB: DuckDB is expected to remain as a local analytical engine. It may be accessed directly from the SureNetwork service rather than through a separate container in the consolidated stack.
Project Desktop Analytics: The Dashboards card on Project Desktop (planned later phase) will embed Superset dashboards contextual to the selected project or hub.
See Platform Roadmap for the full phase plan.