Skip to content

Environment setup¤

To work on the project, whether to update the code or the documentation, you will have to setup a development environment.

Requirements¤

The only requirement is that you have Python and uv installed and available on your command line path.

pip install --user uv

pip is the main package installer for Python.

pipx install uv

pipx allows to install and run Python applications in isolated environments.

rye install uv

Rye is an all-in-one solution for Python project management, written in Rust.

Optionally, we recommend using direnv, which will add our scripts folder to your path when working on the project, allowing to call our make Python script with the usual make command.

Fork and clone¤

Fork the repository on GitHub, then clone it locally:

gh repo clone griffe

The gh GitHub CLI allows you to interact with GitHub on the command line.

git clone git@github.com:your-username/griffe

See the documentation on GitHub for Connecting with SSH and for Cloning a repository.

git clone https://github.com/your-username/griffe

See the documentation on GitHub for Cloning a repository.

Install dependencies¤

First, enter the repository.

If you installed direnv:

  • run direnv allow
  • run make setup

If you didn't install direnv, just run ./scripts/make setup.

The setup command will install all the Python dependencies required to work on the project. This command will create a virtual environment in the .venv folder, as well as one virtual environment per supported Python version in the .venvs/3.x folders. If you cloned the repository on the same file-system as uv's cache, everything will be hard linked from the cache, so don't worry about wasting disk space.

IDE setup¤

If you work in VSCode, we provide a command to configure VSCode for the project.