Getting Started¶
Prerequisites¶
- Python 3.13+
- uv package manager
Installation¶
Install the core package (minimal runtime deps: numpy, pandas, pydantic, rich, requests):
Install specific optional groups for the functionality you need:
Bash
# plotting helpers (plotly, kaleido, matplotlib, scipy, etc.)
uv add "mayutils[plotting]"
# Snowflake + SQLAlchemy integrations
uv add "mayutils[snowflake]"
# Curated default for notebook-based data analysis
# (console + pandas + datetime + notebook + plotting + secrets)
uv add "mayutils[recommended]"
# Everything
uv add "mayutils[all]"
See Dependency Groups for the full mapping of groups to submodules.
For Development¶
make init creates a virtual environment, installs the dev + docs + testing groups, and installs prek git hooks (pre-commit, commit-msg, and pre-push).
Quick Usage¶
Python
import mayutils
from mayutils.objects.numbers import format_number
mayutils.setup() # configure logging + notebook/dataframe niceties (safe no-op without extras)
print(format_number(value=1_234_567))
For plotting (requires the plotting extra):
Next Steps¶
- Dependency Groups — which extras map to which submodules
- Development — local workflow, linting, typing
- Testing — how to write and run tests
- Contributing — commit conventions and release process
- Roadmap — planned work, translated from the legacy
.todofile