Skip to content

Tests Coverage Version Development Stage License Supported Python Versions Supported Python Implementations pre-commit dyce-powered! Bear-ified™

dyceum (née anydyce) – Application experiments for dyce

Dyceum’s AnyDice interpreter in action
Dyceum’s AnyDice language interpreter and interactive playground in action

dyceum is a testing ground for various interactive interfaces to dyce (the dice mechanic modeling library). dyceum was deliberately renamed from anydyce based on community feedback. Currently, it includes:

  1. 💥 New! 💥 A fully functioning, (mostly1) compatible, pure-Python AnyDice language interpreter and interactive playground. Quite a bit of detail is provided on how it was built, how it differs from the original, and all the pitfalls and nuances discovered along the way.
    • Try it! 👉 Try the AnyDice-compatible playground 👈
  2. A JupyterLite graphing widget using Matplotlib and Jupyter Widgets for visualizing histograms and pools:
    • Try it! 👉 Try dyce 👈

JupyterLite may not save your work!

JupyterLite attempts to make use of your browser’s local storage for saving notebook changes. Browser environments vary, including how long local storage is persisted. Further, Binder loses all state once its instances shut down after a period of inactivity. Be careful to download any notebooks you wish to keep.

If you find anything lacking in any way, please don’t hesitate to bring it to my attention.

Running locally

dyceum is also available as a PyPI package and as source. To try it on your own hardware, use the quickstart-local.sh script to create a local virtual environment and bootstrap a local copy.

1
2
3
4
5
% git clone https://github.com/posita/dyceum.git dyceum && ./dyceum/quickstart-local.sh
...
Serving …/path/to/dyceum/site on http://localhost:8000
Build started
No issues found

Once loaded, try the following:

Requirements

dyceum requires a relatively modern version of Python:

It has the following runtime dependencies:

dyceum is proudly 100% Bear-ified™! 👌🏾🐻

License

dyceum is licensed under the MIT License. See the included LICENSE file for details. Source code is available on GitHub.


  1. It is not bug-compatible, instead including fixes for several longstanding implementation errors in AnyDice itself. Further, it does not support AnyDice’s legacy "..." syntax. ↩