Central services for the FLAME platform (PrivateAIM) — a privacy-preserving analytics infrastructure for federated data analysis across distributed institutions.
Documentation — deployment guides, API references, and user workflows.
Table of Contents
| Service | Description | |
|---|---|---|
| server-core | Main REST API — analyses, projects, nodes, registries | |
| server-core-worker | Background worker — Docker container execution | |
| server-storage | File/object storage (MinIO/S3) | |
| server-telemetry | Log aggregation (VictoriaLogs) | |
| server-messenger | Real-time messaging (Socket.io) | |
| client-ui | Nuxt 4 web application | |
| docs | VitePress documentation site |
| Package | Description | |
|---|---|---|
| kit | Core utilities: crypto, domain events, permissions | |
| core-kit | Domain models and types for the core service | |
| core-http-kit | HTTP client for the core API | |
| core-realtime-kit | WebSocket event types | |
| storage-kit | Storage domain types and HTTP client | |
| telemetry-kit | Telemetry domain types | |
| messenger-kit | Messenger domain types | |
| client-vue | Vue 3 component library | |
| server-kit | Shared server foundation (logging, auth, AMQP, Redis) | |
| server-test-kit | Shared test fakes and helpers | |
| server-db-kit | TypeORM utilities | |
| server-http-kit | HTTP middleware and Swagger | |
| server-realtime-kit | Socket.io server helpers | |
| server-telemetry-kit | Telemetry components | |
| server-core-worker-kit | Worker task definitions | |
| server-storage-kit | Storage service components |
- Node.js 22+
- npm (workspaces)
- Docker (optional) — for MySQL/Postgres test databases
External services (for running services locally): Authup (OAuth2), Redis, RabbitMQ, MySQL or PostgreSQL
# Install dependencies
npm ci
# Build all packages
npm run build
# Run tests
npm run test
# Lint
npm run lint# Start local databases (MySQL + Postgres)
docker-compose up -d
# Dev servers
npm run dev --workspace=apps/client-ui # Nuxt frontend
npm run dev --workspace=apps/server-core # Core API
npm run dev --workspace=apps/server-storage # Storage service
npm run dev --workspace=apps/server-telemetry # Telemetry service
npm run dev --workspace=apps/server-messenger # Messenger service
npm run dev --workspace=docs # Documentation siteBefore starting to work on a pull request, it is important to review the guidelines for contributing and the code of conduct. These guidelines will help to ensure that contributions are made effectively and are accepted.
If you have any questions, feel free to contact the author Peter Placzek.
Made with 💚
Published under Apache 2.0.
