Virtufin Platform Specifications¶
This site contains the formal specifications for the Virtufin microservices platform — a real-time financial market data pipeline built on .NET 10.0, Dapr, and Kubernetes.
Architecture¶
graph TB
subgraph External["External"]
BINANCE["Binance"]
ALPACA["Alpaca"]
NATS["NATS"]
WS["WebSocket<br/>endpoints"]
end
subgraph Platform["Virtufin Platform"]
subgraph Services["Core Services"]
GW["API Gateway<br/>(virtufin-api)"]
WM["WorkManager<br/>(worker-management)"]
WSM["WebSocket Manager<br/>(websocket-proxy)"]
end
subgraph Infra["Infrastructure"]
DAPR["Dapr Sidecars"]
REDIS["Valkey / Redis"]
K8S["Kubernetes"]
end
end
subgraph Consumers["Consumers"]
CSHARP["C# Client"]
PYTHON["Python Client"]
TS["TypeScript Client"]
end
GW -- "gRPC (h2c)" --> WM
GW -- "gRPC (h2c)" --> WSM
WM --> DAPR
WSM --> DAPR
GW --> DAPR
DAPR --> REDIS
WSM -- "WebSocket" --> BINANCE
WSM -- "WebSocket" --> ALPACA
BINANCE --> WSM
ALPACA --> WSM
CSHARP -- "gRPC / gRPC-Web" --> GW
PYTHON -- "gRPC" --> GW
TS -- "gRPC-Web" --> GW
K8S --- Services
Dependency Map¶
graph TD
CC["cross-cutting"]
CDT["core-data-types"]
AG["api-gateway"]
WM["worker-management"]
WSP["websocket-proxy"]
SDK["multi-sdk"]
DEP["deployment"]
CICD["ci-cd-tooling"]
CC --> AG
CC --> WM
CC --> WSP
CC --> DEP
CC --> CICD
AG --> SDK
WM --> SDK
WSP --> SDK
DEP --> AG
DEP --> WM
DEP --> WSP
CICD --> SDK
Specifications¶
| # | Specification | Requirements | Description |
|---|---|---|---|
| 1 | Cross-cutting | 7 | Shared infrastructure, observability, resilience, security |
| 2 | Core Data Types | 5 | EAV framework, Variant, FlatBuffers, reactive observables |
| 3 | API Gateway | 7 | Dynamic gRPC discovery, JSON transcoding, state, pub/sub |
| 4 | Worker Management | 6 | Polyglot worker lifecycle, event-driven processing, locking |
| 5 | WebSocket Proxy | 6 | External WS connections, pub/sub routing, auto-reconnect |
| 6 | Multi-SDK | 7 | C#/Python/TypeScript client SDKs from proto contracts |
| 7 | Deployment | 8 | Helm chart, Dapr components, per-service versioning |
| 8 | CI/CD Tooling | 6 | Doc generation, gRPC client publishing, reusable workflows |
Total: 52 requirements across 8 specifications.