Windstorm Dwarven is the backend API service for the Windstorm platform.
It provides a FastAPI-based REST interface that exposes Windstorm data and analysis artifacts to the user interface and other platform components.
Windstorm Dwarven does not directly orchestrate workflows. Instead, it serves as the system interface for data produced by the event-driven Windstorm workflow infrastructure.
Windstorm is part of the broader DigitalForge digital engineering ecosystem.
Windstorm Dwarven provides a backend service responsible for:
- Serving data generated by automated engineering workflows
- Providing API access for the Windstorm user interface
- Managing interactions with the Windstorm database
- Exposing analysis results and artifact metadata
- Supporting digital engineering traceability workflows
+----------------------+
| GitHub / Gitea |
+----------+-----------+
|
| Webhooks
v
+----------------------+
| Argo Events / Sensors|
+----------+-----------+
|
| Triggers
v
+----------------------+
| Argo Workflows |
+----------+-----------+
|
| Stores Results
v
+----------------------+
| PostgreSQL |
+----------+-----------+
|
| API Queries
v
+----------------------+
| Windstorm Dwarven |
| FastAPI |
+----------+-----------+
|
v
+----------------------+
| Windstorm Trade |
| Vue UI |
+----------------------+
Component Technology
Backend Framework FastAPI Language Python API Documentation OpenAPI / Swagger Database PostgreSQL Containerization Docker Workflow Integration Argo Workflows
- Python 3.10+
- pip
- virtualenv
- Docker (optional)
python -m venv venv
source venv/bin/activateInstall dependencies:
pip install -r requirements.txtuvicorn app.main:app --reloadServer:
Swagger UI:
OpenAPI schema:
http://localhost:8000/openapi.json
Example configuration:
DATABASE_URL=postgresql://user:password@postgres:5432/windstorm
Build container:
docker build -t windstorm-dwarven .Run locally:
docker run -p 8000:8000 windstorm-dwarvenComponent Purpose
windstorm-trade User interface windstorm-dwarven Backend API windstorm-mage Webhook aggregation windspear / windsage Event ingestion windrunner Workflow dispatch windtrader SysML validation tooling
Licensed under AGPL-3.0.