Video about NP-completeness, circuit SAT and "reversing time"
The dependencies are managed via Poetry.
To install the project, first get Poetry via pip install poetry.
Next, run poetry install to install the dependencies.
Poetry uses a lockfile (poetry.lock) to keep track of the exact versions
of packages to be installed.
If you have a virtualenv or Conda env activated, Poetry will install the dependencies into this environment. Otherwise, it will create a new virtualenv for you.
You can then run commands in this environment by starting your command with poetry run,
e.g. poetry run manim -pql anims.py Polylogo.
If you don't want to prefix everything with poetry run, you can either
- run
poetry shell, which creates a subshell with the environment activated - identify the location of the virtualenv via
poetry run which python. You should get a path like$SOME_PATH/bin/python. You can runsource $SOME_PATH/bin/activateto activate the virtualenv, just like you would normally.
To install pre-commit hooks that check the code for correct formatting etc.:
pip install pre-commit
pre-commit install
pre-commit install --hook pre-push