gds-core
Monorepo for the Generalized Dynamical Systems ecosystem — typed compositional specifications for complex systems, grounded in GDS theory (Zargham & Shorish, 2022).
Packages
| Package | PyPI | Description |
|---|---|---|
| gds-framework | Core engine — blocks, composition algebra, compiler, verification | |
| gds-viz | Mermaid diagram renderers for GDS specifications | |
| gds-games | Typed DSL for compositional game theory (Open Games) | |
| gds-examples | Six tutorial models demonstrating every framework feature |
Quick Start
# Clone and install all packages (editable, workspace-linked)
git clone https://github.com/BlockScience/gds-core.git
cd gds-core
uv sync --all-packages
# Run tests for a specific package
uv run --package gds-framework pytest packages/gds-framework/tests -v
# Run all tests
uv run --package gds-framework pytest packages/gds-framework/tests packages/gds-viz/tests packages/gds-games/tests packages/gds-examples -v
# Lint & format
uv run ruff check packages/
uv run ruff format --check packages/
Development
This is a uv workspace monorepo. All four packages are developed together with shared tooling:
- Linting/formatting: Ruff (configured at root, line-length 88)
- Testing: pytest per-package
- Docs: Unified MkDocs Material site
- CI: GitHub Actions matrix across all packages
- Publishing: Tag-based per-package PyPI publishing (
gds-framework/v0.3.1)
Documentation
Full documentation at blockscience.github.io/gds-core.
Citation
If you use GDS in your research, please cite:
M. Zargham & J. Shorish, "Generalized Dynamical Systems," 2022. DOI: 10.57938/e8d456ea-d975-4111-ac41-052ce73cb0cc
See CITATION.cff for BibTeX and other formats.
Credits & Attribution
Author: Rohan Mehta — BlockScience
Theoretical foundation: Dr. Michael Zargham and Dr. Jamsheed Shorish — Generalized Dynamical Systems, Part I: Foundations (2021).
Architectural inspiration: Sean McOwen — MSML and bdp-lib.
Contributors:
- Michael Zargham — Project direction, GDS theory guidance, and technical review (BlockScience).
- Peter Hacker — Code auditing and review (BlockScience).
Lineage: Part of the cadCAD ecosystem for Complex Adaptive Dynamics.
License
Apache-2.0 — see LICENSE.
Metadata
Release files for gds-core 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| gds_core-0.1.0.tar.gz | 328.3 kB | Without provenance | Details for gds_core-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| gds_core-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for gds_core-0.1.0-py3-none-any.whl |
Total release size: 335.0 kB
Release files / gds_core-0.1.0.tar.gz
| Download URL | gds_core-0.1.0.tar.gz |
|---|---|
| Size | 328.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
435d14524d90150cf5d6753d77b403614bfe9ff43f6bd00b24c8ab2a367a094d
|
|
BLAKE2b-256 checksum How to use checksums |
b3ba3ecce5471026d8e3d74ba4ac2b63d04aff0ee3aa4666cae5ca575c825929
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / gds_core-0.1.0-py3-none-any.whl
| Download URL | gds_core-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
48c4f2f4d96bfbb21cb34e449d47a801c9edfd246e2c01f854df2b700ef7af7c
|
|
BLAKE2b-256 checksum How to use checksums |
67d22e2e9a04dc20e931c871c07eaf41930bb0c8eb9dce917a9c433735fe2841
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for gds-core 0.1.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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.