Overview¶
This page describes how to set up a local development environment with uv, optional documentation dependencies, and pre-commit hooks. It assumes you have reviewed the repository and are familiar with the majority of the information found in the User Guide.
Environment Setup¶
When developing Earth2Studio, using a uv virtual environment is suggested and will be used in the documentation. To create a local development environment with a git repo and uv:
-
Clone the repo and use uv to create a Python 3.13 virtual environment and sync it with the
devdependency group:# Replace with your fork git clone https://github.com/NVIDIA/earth2studio.git --single-branch cd earth2studio uv venv --python=3.13 uv sync # This will install the base and developer dependenciesThis should create a Python virtual environment inside of the local Earth2Studio git repository.
-
To install the base, developer, documentation dependencies, use:
Note
When working with models, additional optional dependencies might be required.
Refer to the Install Guide for details on the
optional dependencies inside the package.
Use the uv sync --extra <optional dep> command instead of pip install.
Take note of the difference between the optional dependency groups used here and the
extra dependencies when using specific models.
Pre-commit¶
For Earth2Studio development, pre-commit is required. This will not only help developers pass the CI pipeline, but also accelerate reviews. Contributions that have not used pre-commit will not be reviewed.
To install pre-commit run the following inside the Earth2Studio repository folder:
uv pip install pre-commit
uv run pre-commit install
>>> pre-commit installed at .git/hooks/pre-commit
After the above commands are executed, the pre-commit hooks are activated and all the commits are checked for appropriate formatting, linting.