A Library for Quick Dependency-based Computation
Project description
Quick Dependency-based Computation
📖 Documentation: https://turbograph.docs.cern.ch/master
TurboGraph is a lightweight Python library for defining and computing values based on dependencies.
It builds a directed dependency graph automatically—leveraging either
the networkx or igraph backend—to ensure computations run in the correct order.
🚀 Quick Example
TurboGraph infers dependencies from function signatures:
from turbograph import compute
specifications = {
"a": 2,
"sum": lambda a, b: a + b, # "sum" depends on "a" and "b"
}
result = compute(specifications, ["sum"], {"b": 3})
print(result) # Output: {"sum": 5}
TurboGraph detects that "sum" depends on both "a" and "b"
and executes the computations accordingly.
📌 Check out the Quick-Start Guide for more details.
📥 Installation
TurboGraph requires Python ≥ 3.11 and supports NetworkX (≥2.5) and iGraph (≥0.10.0) as graph backends.
# Install with NetworkX backend
pip install "turbograph[networkx]"
# Or with the iGraph backend
pip install "turbograph[igraph]"
📚 For more installation options, check out the Installation Guide or Development Guide.
Credits
The TurboGraph logo was created using the following fonts
- Speedway – dafont.com/speedway.font
- Speed Solid – dafont.com/speed-solid.font
The multi-versioning approach for this documentation was largely inspired by the implementation in this repository, which is licensed under the Apache-2.0 license. I sincerely appreciate the author for sharing their work!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file turbograph-0.6.1-py3-none-any.whl.
File metadata
- Download URL: turbograph-0.6.1-py3-none-any.whl
- Upload date:
- Size: 35.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2282028ebfc8f9dce735e74e897445205b40939008a702868762cbd849df0cc
|
|
| MD5 |
53abc00d4ff6500635b14501d003b512
|
|
| BLAKE2b-256 |
35d8892524999eef3d4e3dc08eba3f965e5fae82d57d9ba524a72179261b384b
|