Visuals autogenerated from examples/visual/chash_example.py
Happy Simulator
A simulation library for distributed systems.
Documentation · Examples · Blog Post
[!WARNING] Alpha — Still in active development. Some features may not work as expected. Interfaces may change drastically.
Happy Simulator is a code-first simulation library for education, research, design, or entertainment.
Some articles using the library:
- Simulation-Enhanced Reasoning - enhancing AI with simulation.
- Adverse Advertising Amplification - consumer behaviour simulation.
Features
- Intuitive modeling — convert real-world components into simulated equivalents.
- Rich component library — queues, load balancers, rate limiters, industrial components, behavioural models and more
- Visual debugger — browser-based UI generated from simulation model.
- AI Compatible - use your generative AI of choice to convert scenarios to simulations.
Quick Start
pip install happysim
from happysimulator import Simulation, Source, Sink, Server, Instant
from happysimulator.distributions import ExponentialLatency
sink = Sink()
server = Server("Server", service_time=ExponentialLatency(0.1), downstream=sink)
source = Source.poisson(rate=8, target=server)
sim = Simulation(sources=[source], entities=[server, sink], end_time=Instant.from_seconds(60))
summary = sim.run()
Visual Debugger
pip install happysim[visual]
# define sim
from happysimulator.visual import serve
serve(sim) # opens browser at http://127.0.0.1:8765
Step through events, inspect entity state, and create interactive dashboards from the browser.
Installation
pip install happysim # core library
pip install happysim[visual] # + browser debugger (FastAPI + uvicorn)
pip install happysim[dev] # + testing & docs tools
Or install from source:
git clone https://github.com/adamfilli/happy-simulator.git
cd happy-simulator
pip install -e ".[dev]"
Documentation
Full guides, API reference, and example walkthroughs at adamfilli.github.io/happy-simulator.
License
Metadata
Release files for happysim 0.2.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| happysim-0.2.5.tar.gz | 999.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| happysim-0.2.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.2 MB
Release files / happysim-0.2.5.tar.gz
| Download URL | happysim-0.2.5.tar.gz |
|---|---|
| Size | 999.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
86ae78c1e9db7700850a4b4c9247ba31c46ffe5ce1fdeb382149c054fb263537
|
|
BLAKE2b-256 checksum How to use checksums |
2b897688ca7cef4cc79f67cfb7dd1fe14cbb3d523ea27a245ddc2f69a217559c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 17, 2026.
Transparency logRelease files / happysim-0.2.5-py3-none-any.whl
| Download URL | happysim-0.2.5-py3-none-any.whl |
|---|---|
| Size | 1.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0d38ba75252c9442766a275ab60d4f6e0d4aa766ef7c156216a6aa7b703f69df
|
|
BLAKE2b-256 checksum How to use checksums |
9dba695045db6fb481e156120598050bfacf535c38f75c591f215e4684e950d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 17, 2026.
Transparency log