Skip to content

Stack and Components

NickFlach edited this page Jul 24, 2026 · 1 revision

Stack and Components

A map of the codebase — what each part does and where it lives.

Server — server/

TypeScript API gateway.

Component Description
API Gateway RESTful endpoints with an OpenAPI spec
WebSocket Real-time tag / alarm / health streaming to clients
Prometheus /metrics endpoint (homegrown scada_-prefixed registry)
Health checks Liveness & readiness probes
Caching Response caching layer (Redis)
Config Centralized configuration management
Simulator Industrial process simulator for development
Evolutionary Integrity Engine Genome-based strategy evolution with safety guards (ADR-0023)
Decoherence Prediction Correlation-based sentinel sampling with temporal advantage (ADR-0024)
Vendor Adapters Rockwell · Siemens · ABB · Schneider · GE
PID Auto-Tuning Adaptive PID controller tuning (human-approval-gated)
SPC Engine Statistical process control, real-time monitoring
GR::LISTEN Alert filtering and intelligent noise reduction
Flux Publisher World-state engine event publishing

Client — client/src/

React dashboard UI — components, hooks, and pages for real-time SCADA visualization, including the Living Fano Dashboard (ADR-0025) with geometry visualization, bloom/flow rendering, and real-time decoherence monitoring.

Smart contracts — contracts/

Solidity 0.8, built with Foundry + Hardhat (prefer forge for tests).

  • BountyPayment.sol — Gitcoin bounty integration for contributor rewards (payout is role-gated and enforces claimant == recipient).

Blockchain — blockchain/

Custom EVM chain for industrial data integrity — Chain ID 0x5CADA (380634), Clique PoA, 5s blocks, go-ethereum fork. The production node (Kuramoto-BFT) lives in the sibling repo 0xSCADA-node.

Linux kernel — kernel/

Forked Linux 6.19-rc5 with PREEMPT_RT patches for deterministic real-time control loops.

Database — migrations/

PostgreSQL schema (Drizzle) with SQLite dev fallback: sites, assets, alarm definitions, certificate management, audit trails, and RBAC.

Orchestration — k8s/ + helm/

Production-grade: Helm charts, ArgoCD GitOps, zero-trust network policies, Prometheus + Grafana observability, industrial device plugins, and a real-time scheduler for PREEMPT_RT workloads.

Containers — docker/

Multi-container stack: client, server, gateway, edge, validator, plus pre-configured Grafana dashboards.

Observability

Pre-built Grafana dashboards (Alarms · Gateway Status · System Overview) and Prometheus metrics at /metrics on all services.

CLI — cli/

npx 0xscada <agents|alarms|containers|db|gateway|shell|tags> — see Getting Started.


For the industrial-protocol surface (OPC-UA, Modbus, DNP3, GOOSE, Sparkplug B) and the vendor adapters, see Protocols and Vendors.

Clone this wiki locally