Architecture
A relationship map showing data / schema flow and dependencies across the DeukPack product family at a glance.
Overall architecture
flowchart TB
subgraph Input["Definitions & data sources"]
IDL[".deuk / Protobuf / Thrift"]
OAS["OpenAPI / JSON Schema"]
CSV["CSV / JSON"]
DB["DB / meta"]
XL["Excel"]
end
subgraph Core["DeukPack core · engine"]
AST["AST / parsing"]
GEN["Code generation"]
SCH["Schema / meta"]
AST --> GEN
AST --> SCH
end
subgraph Output["Generated artifacts"]
CODE["C# / C++ / TS / JS"]
SQL["SQLite DDL"]
JSON["Schema JSON"]
GEN --> CODE
GEN --> SQL
SCH --> JSON
end
subgraph Runtime["Runtime & tools"]
PROTO["DeukPack Protocol<br/>Binary · Compact · JSON"]
EXCEL["Excel add-in<br/>headers · validation · diff"]
PIPE["Pipeline · Unity<br/>validation · load"]
EXT["Extensions<br/>EF · DB · Sheets · Unreal"]
end
subgraph Integration["Integration scenarios"]
SVR["Server integration<br/>REST · packets · meta"]
RT["Real-time game<br/>client ↔ server"]
end
IDL --> Core
OAS --> Core
CSV --> Core
DB --> Core
XL --> EXCEL
SCH --> EXCEL
CODE --> PROTO
CODE --> PIPE
JSON --> PIPE
JSON --> EXCEL
Output --> EXT
PROTO --> PIPE
PROTO --> SVR
PROTO --> RT
PIPE --> SVR
PIPE --> RT
- Definitions & data sources: DeukPack IDL (.deuk), Protobuf, Thrift, OpenAPI, CSV, JSON, DB, spreadsheets, etc. feed into the core engine.
- Core · engine: Parsing and AST produce code generation and schema / meta.
- Generated artifacts: C# / C++ / TS / JS code, SQLite, and schema JSON are consumed by protocol, pipeline, Excel add-in, and extensions.
- Runtime & tools: Protocol (serialization / messaging), Excel add-in (headers / validation), Pipeline · Unity (validation / load), and extensions all share core artifacts.
- Server integration: Types and schemas produced by the protocol and pipeline enable REST, packet, and meta communication with servers.
- Real-time game: The same schema and serialization handle client–server real-time packets, meta, and messages consistently.
Product dependency graph
flowchart LR
C["Core · engine"]
P["Protocol"]
E["Excel add-in"]
U["Pipeline · Unity"]
X["Extensions"]
C -->|"code / schema"| P
C -->|"schema JSON"| E
C -->|"code / schema / tables"| U
C -->|"AST / artifacts"| X
P -->|"serialized types"| U
E -->|"meta / headers"| U
- Core · engine provides the foundation (code, schema, AST) for every other product.
- Protocol uses types generated by core for serialization and messaging, consumed by Pipeline · Unity, server integration, and real-time game.
- Excel add-in uses core schema for headers and validation; meta can flow into Pipeline · Unity.
- Server & real-time game integration: Code and protocol from the same IDL / schema keep client–server packets, meta, and messages consistent.
- Extensions build on core (and optionally protocol / Excel) to add EF, DB, Sheets, Unreal, and more.
Next steps
- Products overview — Roles and scope of each product
- Positioning — Target and position