The developer libraries
Building on Prism
The software you have seen (the CLI, the Server, the Editor) is built on a small set of libraries, and those same libraries are what you build your application on. They are open source under the Apache License 2.0, written in pure, modern C++ with Python bindings, each depending only on the standard library and the layer below it. You can take one, two, or all three.
Each library has its own deep manual on its own subdomain, with an overview, quickstart, guides, and reference:
- Kinogaki Core →: the document model, for C++ and Python. Pure and portable, resting on the standard library alone: the Document, Elements, Paths, typed Values, the evaluator, native serialization, codecs, bundles, and the C ABI. The layer everything else stands on.
- Kinogaki UI →: a GPU-drawn, retained-mode interface toolkit. A 2-D drawing layer over the render hardware interface and a themeable widget framework with docking.
- Kinogaki Platform →: the runtime beneath a native app. OS windowing and input, a Metal render hardware interface, and the message and command buses an application edits through.
A clean dependency stack
Kinogaki UI widgets, GPU drawing, docking, themes
│ depends on
Kinogaki Platform window, input, Metal RHI, buses
│
(your app) ──────────────────────────────────┐
│ │
Kinogaki Core document model: C++ and Python, std-lib only
Kinogaki Core sits to the side: it rests on the standard library alone, and the GUI layers depend on it rather than the reverse. A headless tool links Core alone; a native application links Core for its documents and Platform + UI for its interface. The Kinogaki Editor links all three; the CLI and Server link Core only, since Core carries the codecs. The build enforces the layering.
Open source
The libraries, the format, and the examples are all open source under the Apache License 2.0. The format is yours: you never need permission to read, write, validate, or move your own data. Kinogaki Light, Kinogaki Pixel, and Kinogaki Atlas are complete applications you can read end to end, the clearest documentation for how the pieces go together.
Pick a library above to dive into its manual, or read why Prism exists first.