Skip to main content

WireForge

PyPI Python CI License

Schema-driven wire-format toolkit for C++17 and C99: describe binary messages in YAML (by hand, in the web UI, through the CLI or an AI agent) and generate allocation-free serializers, validators, framers and dispatchers (C++17, or C99 with --language c) together with a GoogleTest project that proves them against a reference codec and gates the generated code at 100 % line, branch and function coverage.

  • The wire format is imposed by the remote party: generated code never adds bytes.
  • Runtime and generated code use only pre-allocated storage: no heap, no exceptions, no RTTI required.
  • One service layer behind the wireforge CLI, the Python API, the REST server with its web UI and the MCP server.
  • A generated Wireshark Lua dissector shows every interface's frames, with the same checks as the decoder.
  • Zero warnings from every compiler and analyzer; tested on 32/64 bit, little and big endian, x86 and ARM, on Linux, Windows, macOS, Android and FreeRTOS; differential testing and fuzzing.

The way in is short: wireforge init gives a working first project, you change it to your protocol, generate the C++ code, run the tests and read the results. Nothing about requirements or standards is needed for that.

WireForge in one minute (video)

The web UI right after New project: the first message open in the editor, the next steps, and the Generate tab with the generated C++ and the download of code and tests

For teams with a development or assurance process

Optionally, wireforge docs turns the same model into requirements, design, test and traceability documents with test and coverage results, change impact between revisions and ReqIF/CSV exchange with requirements tools (docs/LIFECYCLE.md, docs/integration/). For projects that apply standards such as DO-178C, ISO 26262, IEC 61508 or IEC 62304, this evidence supports your processes and your tool assessment; it does not by itself give conformity, certification or tool qualification, which depend on the whole project and its assessor (docs/DO178C.md).

Start with the tutorial (a MAVLink 2 drone link from the model to the application, tests, CI, Wireshark and AI agents), docs/GUIDE.md (install, 5-minute quickstart, examples), or the wiki for a short tour. Reference:

Topic Document
How it compares (protobuf, nanopb, Kaitai Struct, mavgen, cantools, ...) docs/COMPARISON.md
Definition format docs/SCHEMA_SPEC.md, schema/, examples/
Command line and Python API docs/CLI.md
Generated C++ and test project docs/CODEGEN.md, docs/RUNTIME.md
Layout analysis / ICD export docs/LAYOUT.md
Wireshark dissector (Lua plugin) docs/WIRESHARK.md
Requirements, design and test documents docs/LIFECYCLE.md
Fitting into a DO-178C process, tool integration docs/DO178C.md, docs/integration/
Server, web UI, MCP docs/SERVER.md, docs/UI.md, docs/MCP.md
Secure deployment and operation docs/SERVER.md, "Deployment and operation"
Importers (CSV/Excel ICD, C headers, CAN databases) docs/IMPORT.md
Published protocols (Modbus, CRSF, J1939, MAVLink 1 and 2, UBX; wireforge init --protocol) docs/GUIDE.md, protocols/
Quality, safety, traceability quality/QUALITY_POLICY.md, docs/SAFETY.md, docs/CODING_RULES.md
Architecture and design decisions docs/ARCHITECTURE.md, docs/DECISIONS.md

Development: see CONTRIBUTING.md (pip install -e ".[dev]", cmake --preset dev && cmake --build --preset dev && ctest --preset dev, all gates: quality/run_all.sh).

GitHub Action

oguzhankynk/wireforge is also a GitHub Action that validates a project, checks wire compatibility with the base of a pull request and runs the generated tests (docs/integration/github_actions.md):

- uses: oguzhankynk/wireforge@v0.3.0
  with: { project: icd }

License

The runtime/ library is MIT-licensed (see runtime/LICENSE): code generated by WireForge belongs to you and depends only on this MIT-licensed runtime, so shipping it in your product carries no restriction.

Everything else (the CLI, code generator, server, web UI, and MCP server) is licensed under the Business Source License 1.1 (see LICENSE): free for development, testing, and evaluation; a commercial license is required for production use, except that running it in continuous integration (validation, comparison with earlier revisions, generated tests) is free, also in commercial product repositories. It converts to MIT on 2036-10-17. Contact the Licensor for commercial licensing: kaynak.oguzhan0@gmail.com.

Metadata

Release files for wireforge 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wireforge 0.3.0
File Size Uploaded Provenance
wireforge-0.3.0.tar.gz 422.4 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for wireforge 0.3.0
File Interpreter ABI Platform
wireforge-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 908.0 kB

Release files / wireforge-0.3.0.tar.gz

Download URL wireforge-0.3.0.tar.gz
Size 422.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4e4d507714d8340be018f268869eb05e2eba9cb235350516fcb7b1369ba99d9c
BLAKE2b-256 checksum
How to use checksums
a34f314f643d1f28ee2be3e48a4f40e5d7de1f4740e255de5c660118c1c774c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / wireforge-0.3.0-py3-none-any.whl

Download URL wireforge-0.3.0-py3-none-any.whl
Size 485.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
909341812203c14f7563512f4fd35eaf0f35201b73634f969954b849f9097d26
BLAKE2b-256 checksum
How to use checksums
0b1ab2aef7f4be96746457e6db46fddc6039cf3c8fd15e101435c87c2e3b4f2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Security for wireforge 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for wireforge-0.3.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page