Products overview
DeukPack covers IDL, schema, code generation, serialization, meta, and pipelines, extending to server integration and real-time game networking with the same schema and protocol. The product family is organized into Core · engine / Protocol / Spreadsheet add-in (Excel, etc.) / Pipeline · Unity / DeukNavigation / Extensions. For inter-product relationships and data flow, see the Architecture diagram.
!!! tip "Latest notices by product line" All product-line notices in reverse chronological order live on Releases · news. Each product page below shows notices tagged for that line only.
Product roles
| Product | Core role | Scope | Details |
|---|---|---|---|
| DeukPack Core · engine | IDL parsing, AST, code generation, schema/meta — the central engine. Apache-2.0, ready to use. Differentiators: struct inheritance (extends), rich types (float, DB model, tablelink). | .deuk/.proto/.thrift, OpenAPI/JSON Schema/CSV/JSON/DB import, C#/C++/TS/JS codegen, SQLite generation | Core · engine |
| DeukPack Protocol | Serialization runtime and messaging protocol | Binary/Compact/JSON, msgId, ProtocolRegistry, zero-copy option, packet body serialization | Protocol |
| DeukPack Excel add-in | Schema-based meta editing in Excel | Header generation, validation, schema diff, Apply, sheet-based meta editing | Excel add-in |
| DeukPack Pipeline · Unity | Connect artifacts to projects/Unity/servers | IDL/Excel → code/schema/tables → Unity/server validation & load. Server integration, real-time game networking | Pipeline · Unity |
| DeukNavigation | Recast/Detour NavMesh with shared Deuk wire (.dpk) for Unity and server | DeukNavRuntime, CrowdContext, DeukNavAgent, baking, DeukNaviTool. Client–server same mesh & API | DeukNavigation |
| Extensions | Add-on products on top of core | Deuk UI & editor tooling, EF, DB migrator, Google Sheets, Unreal/Elixir, plugins | Extensions |
Key feature highlights
| Feature | One-liner | Problem solved |
|---|---|---|
| Tables & meta | Schema-based MetaTableRegistry, Excel add-in |
Validate, load, and edit meta data in sync with schema |
| Native messages | Auto-generated msgId · ProtocolRegistry |
No manual message ID or dispatch registration |
| Inheritance (extends) | Auto-merge parent struct fields | Eliminate field duplication, multi-level inheritance, wire compat |
Selection (Write + fieldIds) |
Serialize only chosen fields from a full record | Runtime projection without partial types |
Replacement (Write + overrides) |
Per-recipient field values without cloning | Memory/perf optimization for fan-out and push |
| Rich data types | float, double, int8–int64, list/set/map, tablelink (DB row ref), datetime, decimal | DB model, numeric precision, and meta/table schemas in one type system |
→ Extended data types (vs Protobuf/Thrift), one line: int8–int64, uint8–uint64, float/double, bool, string/binary, list/set/map, tablelink, datetime/decimal, struct extends. Full list and semantics: Reference → API.
→ Core differentiators: struct inheritance (extends) and the above type set (including DB model support) are built into the engine. The three serialization features (unified Write with field selection and/or overrides, Wire Profile) are composable. Details: Unified Write tutorial, API reference.
Product selection guide
- Want to use the core right now → Core · engine — Use the core library now section at top (npm/GitHub links, install, CLI)
- Want to unify definitions and schemas in one toolchain, integrating existing IDL, OpenAPI, CSV, DB → Core · engine
- Need packet/meta serialization, server integration, real-time game networking → Protocol
- Want to manage planning/balance meta in spreadsheets according to schema → Excel add-in
- Want to apply definition/meta artifacts to Unity/server and enable server or real-time game integration → Pipeline · Unity
- Need NavMesh pathfinding and crowd simulation shared between Unity and server (same .dpk) → DeukNavigation