Downloads
The DevKit all-in-one ZIP, plus the underlying tools and demo applications as standalone repositories.
dsviper 1.2.7 DevKit
Kibo code generator, CLI tools, and templates. Pulls dsviper from PyPI via requirements.txt. Documentation is published separately (see below).
dsviper Runtime
Pre-built wheels for macOS, Linux, Windows across Python 3.10–3.14.
Kibo Code Generator
Java-based code generator (kibo-1.2.7.jar) with C++ and Python templates for DSM models.
CLI Tools
Database Editor (dbe.py), Commit Database Editor (cdbe.py), DSM utility, and commit admin.
Templates
StringTemplate files for C++ and Python code generation from your DSM definitions.
The DevKit ZIP is the all-in-one bundle — runtime, generator, GUI tools, and templates in one download. Individual GUI tools are also distributed as standalone repositories (see Qt Widgets Stack and QML Stack below). IDE plugins (VS Code, JetBrains) and DSM reference samples (dsm-samples) are distributed via their respective Marketplaces and public GitHub repositories.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6 (for GUI tools: dbe, cdbe)
- Java 17+ (for Kibo code generator)
DevKit 1.2 Documentation
Sphinx documentation for DSM, dsviper, Kibo, and the CLI tools. Also available online.
Versioned by API line (1.2) — independent of the runtime patch. The PDF is suitable
for printing or archival; the ZIP unpacks to a multi-page HTML site with full navigation and search.
Two parallel implementations are provided. The Qt Widgets stack is the stable, production-ready path. The QML stack is an experimental port that validates dsviper against a declarative UI tier — useful for evaluation, not yet recommended for production.
Database Tools
Database Editor (dbe) and CommitDatabase Editor (cdbe) — practical
utilities for inspecting and editing Viper databases.
dsviper-tools Qt Widgets Stable
Database Editor (dbe) and CommitDatabase Editor (cdbe) — Qt Widgets
Qt Widgets implementations of the two database editing tools: dbe for raw document
inspection and blob browsing, cdbe for commit-level inspection. Also bundled in the
all-in-one DevKit ZIP — this repository tracks them standalone for development and CI.
dbe
cdbe
dbe — Database Editor
Browse documents, inspect metadata, navigate blobs. Direct access to the underlying database tier.
cdbe — Commit Database Editor
Inspect commits, programs, and DSM definitions. Visualize commit-level transformations.
Cross-Platform
Tested on macOS, Linux, and Windows via PySide6.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6
dsviper-tools-qml QML Experimental
dbe and cdbe — declarative QML port
QML port of the same two tools, using PySide6/QML and the Fusion style. Functionally equivalent
to dsviper-tools but built on a declarative UI tier.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6
Component Libraries
Shared Python models and UI components used by the tools and demo applications. Optional — relevant if you want to fork an application or build your own dsviper-backed UI.
dsviper-components Qt Widgets Stable
Shared Python models and Qt Widgets
View-models bridging dsviper data structures to Qt — documents, commits, DSM, blobs — and reusable Qt Widgets (panels, dialogs, item delegates, list and tree views) shared by Graph Editor and the database tools.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6
dsviper-components-qml QML Experimental
Shared Python models and QML components
QML counterpart to dsviper-components — Python view-models plus reusable QML
components, dialogs, and an SF Symbol icon set with light/dark variants. Used by Graph Editor
QML and the QML database tools.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6
Graph Editor — Demonstrator
Graph Editor is not a business application. It is a demonstrator built to exercise the principles of dsviper — the commit DAG, the DSM-driven model, the CommitStore pattern — and to validate the runtime across multiple UI tiers. Use it as a reference implementation when building your own dsviper-backed application; treat it as a lab tool, not a product.
ge-py Qt Widgets Stable
Graph Editor — Qt Widgets implementation
Qt Widgets port of the native AppKit/C++ laboratory application built with PySide6. Visual
interface for creating, editing, and inspecting Viper commit databases with full undo/redo
via the commit DAG. Vendors dsviper-components in-tree (no extra install).
Graph Visualization
Interactive node-edge graph with selection, positioning, and random graph generation.
Commit Engine
Full commit DAG: forward, merge heads, push, sync. Undo/redo with commit-level granularity.
Data Inspection
Documents browser, metadata viewer, DSM definitions inspector, and commit program trace.
Python Editor
Integrated code editor with syntax highlighting and script execution against the live database.
Requirements
- Python 3.10–3.14
- dsviper
- PySide6
ge-qml QML Experimental
Graph Editor — declarative QML port
Pure QML port of Graph Editor with PySide6 and the Fusion style. Same dsviper runtime, third
UI tier — declarative bindings replace imperative widget code. Vendors
dsviper-components-qml in-tree (no extra install).
Requirements
- Python 3.10–3.14
- dsviper
- PySide6