Control Plane¶
Status: Implemented
Overview¶
The Control Plane is the central service of the Nivron platform. It exposes the public API, coordinates platform capabilities, manages shared services and provides the foundation upon which future platform modules are built.
Every request enters the platform through the Control Plane, making it the primary orchestration layer of the current implementation.
Responsibilities¶
The Control Plane is responsible for:
- Exposing the public platform API.
- Hosting internal platform services.
- Initializing the application.
- Loading shared configuration.
- Integrating with the Platform Framework.
- Managing database readiness checks.
- Serving as the entry point for future platform modules.
Current Implementation¶
The current implementation is organized under apps/control-plane/src/app.
| Directory | Responsibility |
|---|---|
api/ |
Public and internal API routers. |
api/core/ |
Core endpoints such as health and platform information. |
api/internal/ |
Internal operational endpoints. |
api/v1/ |
Versioned public API. |
modules/ |
Platform business modules. |
main.py |
FastAPI application bootstrap. |
Startup Sequence¶
flowchart TD
A[Application Startup] --> B[Load Configuration]
B --> C[Create FastAPI Application]
C --> D[Register Routers]
D --> E[Initialize Shared Framework]
E --> F[Database Connectivity]
F --> G[Ready to Serve Requests]
Request Flow¶
flowchart LR
Client --> FastAPI
FastAPI --> Router
Router --> BusinessModule
BusinessModule --> PlatformFramework
PlatformFramework --> Database
Business Modules¶
| Module | Status | Description |
|---|---|---|
| Organizations | Implemented | Foundation for organization management. |
Future modules will follow the same architectural pattern while remaining isolated.
Public Endpoints¶
| Endpoint | Purpose |
|---|---|
/health |
Health verification. |
/ready |
Readiness verification including database connectivity. |
/api/v1/platform |
Platform metadata. |
/internal/status |
Internal operational status. |
Architectural Principles¶
The Control Plane intentionally remains thin. Business logic belongs to dedicated modules, while shared capabilities are delegated to the Platform Framework.
Related Topics¶
- Architecture Overview
- Repository Structure
- Platform Framework
- Database Architecture
Next Step¶
Continue with Platform Framework to understand the shared services that support every Nivron application.