A dashboarding framework for visualizing performances of algorithms or simulations in various scenarios.
Project description
Algomancy
Algomancy is a lightweight framework for building interactive dashboards that visualize the performance of algorithms and/or simulations across scenarios. It brings together ETL, scenario orchestration, KPI computation, and a Dash-based UI with modular pages.
Highlights
- Python 3.14+
- Dash UI with modular pages and a production-ready server
- Batteries-included packages: content, data, scenario, GUI, CLI
Installation
- Using uv (recommended):
uv add algomancy - Using pip:
pip install algomancy
Minimal example
The following example launches a small placeholder dashboard using the default building blocks from the Algomancy ecosystem. Copy this into a file called main.py and run it.
Set up folder structure
- Create the following directory structure:
root/
|── assets/ (*)
├── data/ (*)
├── src/
│ ├── data_handling/
│ ├── pages/
│ └── templates/
│ ├── kpi/
│ └── algorithm/
├── main.py (*)
├── README.md
└── pyproject.toml
Only the items marked (*) are required.
- create
main.py
from algomancy_gui.gui_launcher import GuiLauncher
from algomancy_gui.appconfiguration import AppConfiguration
from algomancy_content import (
PlaceholderETLFactory,
PlaceholderAlgorithm,
PlaceholderKPI,
placeholder_input_config,
)
from algomancy_data import DataSource
def main() -> None:
host = "127.0.0.1"
port = 8050
app_cfg = AppConfiguration(
etl_factory = PlaceholderETLFactory,
kpi_templates = {"placeholder": PlaceholderKPI},
algo_templates = {"placeholder": PlaceholderAlgorithm},
input_configs = [placeholder_input_config],
host = host,
port = port,
title = "My Algomancy Dashboard",
)
app = GuiLauncher.build(app_cfg)
GuiLauncher.run(app=app, host=app_cfg.host, port=app_cfg.port)
if __name__ == "__main__":
main()
Run
- Save the file as
main.pyand start the app:uv run main.py - Open your browser at http://127.0.0.1:8050
Examples
- A more complete example (including assets and templates) is available in the algomancy repository under
example/. The entry point isexample/main.py.
Requirements
- Python 3.14+
- Windows, macOS, or Linux
CLI
- This package also exposes a CLI entry point
algomancy-cli. Runalgomancy-cli --helpfor usage.
License
- See the
LICENSEfile included with this distribution.
Changelog
- See
changelog.mdfor notable changes.
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 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 algomancy-0.3.18-py3-none-any.whl.
File metadata
- Download URL: algomancy-0.3.18-py3-none-any.whl
- Upload date:
- Size: 4.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3acd64a25a28c5f321f34636f0efc3ca06f17cac04ca1681d500b779e1351676
|
|
| MD5 |
472243656331a9983eccc195e63f8521
|
|
| BLAKE2b-256 |
faa861c8647c3d9212118ec989e899e900f9c44e4b3f22af0cab5b128703c28d
|