Manim animation for https://github.com/thousandbrainsproject/everything_is_awesome May 2025 Hackathon project.
The development of this project is managed with uv, "a single tool to replace pip
, pip-tools
, pipx
, poetry
, pyenv
, twine
, virtualenv
, and more." You will need to install it.
We use uv
as it tracks the latest PEP standards while relying on existing infrastructure like pip
, venv
, etc.
uv.lock
is non-standard in Python, but as Python does not yet define a lockfile standard, any lockfile format is non-standard. The benefit of uv.lock
is that it is cross-platform and "captures the packages that would be installed across all possible Python markers such as operating system, architecture, and Python version". This makes it safe to check-in to the repository.
On a Mac, brew install uv
is sufficient. For additional options, see the uv installation instructions.
uv sync
uv run ruff format
uv run ruff check
uv run deptry src tests
uv run mypy
uv run pytest
uv build