A virtual stack machine that executes Python code based on instructions provided in a JSON file.
Project description
Collagen
Note: This documentation is a work in progress.
Collagen is a virtual stack machine that lets you write procedures in configuration files, like JSON or YAML, that generate outputs like data,
images, or documents.
A procedure defines a sequence of operations that run in the Python environment, and the operations in a procedure pass data to each other by pushing, popping, and swapping data on the stack.
The standard toolkit (built-in) defines a turning complete set of operations that provide the backbone for scripting logic in your procedures.
You can add methods with new functionality by adding toolkits, which add methods by implementing Python functions with the new functionality and using the @cvm.method
decorator.
Installation
You can install collagen via pip
. Note that the basic installation only supports JSON procedures.
pip install collagen
Procedures written in JSON5, HSON, or YAML can have comments and multi-line strings. You can install support for additional configuration file formats via extra requirements.
pip install collagen[json5,hson]
If you're developing a collagen toolkit, include the dev
and docs
extra
requirements.
pip install "collagen[dev,docs]"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file collagen-0.2.0.tar.gz
.
File metadata
- Download URL: collagen-0.2.0.tar.gz
- Upload date:
- Size: 34.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 018a6c18b6cccd23e49be7f6f6ff78e5125f7e9466013cab07b25c724cbcb37b |
|
MD5 | fbdd3135ae9683e624b75a9ee6f3f43a |
|
BLAKE2b-256 | 257b2eadc6d99e674456e39148da005df8521dce9417714019a4c878d4f18c1d |
File details
Details for the file collagen-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: collagen-0.2.0-py3-none-any.whl
- Upload date:
- Size: 20.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 377aa142e0edec2fe2b310abbd8017e82d326e7b7e91cb8998b81689e047787f |
|
MD5 | f81dcb9e590452a2a04b60e57c30ffe5 |
|
BLAKE2b-256 | e762b888ec37976464292f941c3c5d7cafcfecc9682d5dd79980f91a8e46b4e5 |