Viper Documentation

Version 1.2.0 | GitHub

Welcome to the Viper Runtime documentation. Viper is the core runtime for Digital Substrate, providing a powerful data modeling and persistence framework.



What is Viper?

Viper is the core runtime for Digital Substrate, providing a powerful foundation for building data-driven applications.

Key Features

  • DSM Language - A domain-specific modeling language for defining data structures with rich semantics.
  • Code Generation - Kibo generator produces type-safe C++ and Python code from your DSM models.
  • Persistence - Multiple storage backends: in-memory database, commit-based, blob storage.
  • Serialization - Stream codec for efficient binary serialization and JSON support for interchange.
  • Distributed Systems - Built-in RPC framework and remote object support.
  • Extensible - Function pools, path system, and HTML generation for custom workflows.

Documentation Structure

Section Description
Getting Started Tutorials, quickstart guides, and fundamentals
Concepts Deep dive into DSM language and Kibo generator
Domains 13 detailed domain documentations
Internals C++ and Python architecture for contributors
Migration Version upgrade guides and breaking changes
Tools VS Code extension and Blender add-on
API Reference Complete Python API documentation

Installation

Using pip

pip install dsviper

From Source

git clone https://github.com/digitalsubstrate/viper.git
cd viper
pip install -e .

Need Help?