Platform Architecture¶
Distributed Microservice Design¶
InteriaLib runs as a distributed system of 4 coordinated servers, all working together within and alongside the WinCC OA runtime. We designed this architecture to bridge the gap between WinCC OA's traditional synchronous model and modern web-based tooling.
graph TD
subgraph WinCC_OA["WinCC OA Runtime"]
EWO["14 EWO Widgets"]
XML["80+ XML Panels"]
DP["DP System"]
REST["REST API Server<br/>port 8080 · 60+ endpoints · 5 domains"]
EWO --> REST
XML --> REST
DP --> REST
end
REST --> GW["Application Gateway<br/>port 3000 · Proxy + UI"]
REST --> ME["Manual Engine<br/>port 8083"]
REST --> KG["Knowledge Graph API<br/>port 8090"]
REST --> TE["Tutorial Engine<br/>Python"]
GW --> ED["3 Visual Node Editors"]
ME --> PG["PostgreSQL<br/>12 tables"]
KG --> N4["Neo4j Graph"]
style WinCC_OA fill:#1a1a2e,stroke:#4a6fa5,stroke-width:2px,color:#fff
style REST fill:#4a6fa5,stroke:#fff,color:#fff
style GW fill:#2d6a4f,stroke:#fff,color:#fff
style ME fill:#7b2d8e,stroke:#fff,color:#fff
style KG fill:#e07b39,stroke:#fff,color:#fff
style TE fill:#2196f3,stroke:#fff,color:#fff
style ED fill:#2d6a4f,stroke:#b7e4c7,color:#fff
style PG fill:#7b2d8e,stroke:#d4a5e0,color:#fff
style N4 fill:#e07b39,stroke:#f5c28a,color:#fff
style EWO fill:#334155,stroke:#94a3b8,color:#fff
style XML fill:#334155,stroke:#94a3b8,color:#fff
style DP fill:#334155,stroke:#94a3b8,color:#fff
Design Philosophy¶
Centralized Intelligence, Distributed Execution.
Every module in InteriaLib is designed to both produce and consume shared knowledge. When a menu item is created in the node editor, the knowledge graph indexes it, the manual engine documents it, and the tutorial system can guide users to it — all automatically.
Why 4 Servers?
Managing multiple backend services (REST API, databases, AI engine, documentation) from a single monolithic process would create complexity and fragility. We built a lightweight Application Gateway (port 3000) that unifies everything — routing requests to the right backend, serving all visual editors, and providing a consistent API surface. This single architectural decision unlocked the entire web-based tooling ecosystem.
The REST API Layer¶
The core REST API on port 8080 exposes 60+ endpoints organized into 5 domains:
| Domain | Endpoints | Purpose |
|---|---|---|
| Datapoints | 12 | Read/write real-time process data |
| Menu | 6 | Menu structure CRUD and navigation |
| PARA | 18 | Datapoint type management and configuration |
| Manual | 15 | Documentation generation and versioning |
| Plants | 25+ | Plant hierarchy, discovery, sequences, conditions |
Every visual editor, every viewer, and every automated process communicates through this unified API layer — creating a single, consistent interface to the entire WinCC OA system.