🛠️ Local Dev environment setup
I develop data science python projects in Linux OS or MAC OS. (For Windows OS I recommend WSL and run commands as Linux OS).
I setup my local development environment using the following steps:
💻 Computer setup to develop with Python
- Install Git
- Linux:
sudo apt-get install git
- MAC:
brew install git
- Linux:
- Install Make
- Linux:
sudo apt-get install make
- MAC:
brew install make
- Linux:
-
Install locally UV to Manage python versions, dependencies and virtual environments.
-
Linux:
- Check the installation version executing in terminal:
uv version
- Check the installation version executing in terminal:
-
-
Install Python using UV, at this time I am using Python 3.11
uv python install 3.11
# Install Python 3.11 in computer
-
In the folder of the project, set the Python version and create a virtual environment.
- If the project has
uv.lock
fileuv sync
# Create virtual Environment and install dependencies.source .venv/bin/activate
# Activate Environment 2.uv venv --python 3.11
# Create a Python 3.11 virtual environmentsource .venv/bin/activate
# Activate the Python 3.11 virtual environment- Check the installation version executing in terminal:
python --version
Note: To deactivate the virtual enviroment in terminal type: deactivate
🐍 General Python tools
General Tools that I use to develop Python projects, The most important is UV to manage python versions, virtual environments, manage dependencies for the projects and to have tools in isolated environments, because applications runs in its own virtual environment to avoid dependencies conflicts and they are available everywhere.
- Cruft allows you to maintain all the necessary boilerplate for packaging and building projects separate from the code you intentionally write. Fully compatible with existing Cookiecutter templates.
uv tool install cruft
- (optional) Pre-commit to local check the security of the dependencies of the project.
uv tool install pip-audit
- (optional) Pip-audit to local check the security of the dependencies of the project.
uv tool install pip-audit
- (optional) Actionlint to check the syntax of the GitHub Actions configuration files of the project.
uv tool install actionlint
Note: UV replace tool like Pyenv, Poetry and other ones to manage the python versions, environments and dependencies.
📁 Start a new data science project
-
Start a new project using the Cruft with the Data Science Project Template.
-
Answer the questions to create the project.
-
Run
make init_env
to init Git Or You can do the same running this commands: -
Run
make install
to install the dependencies of the project. Or You can do the same running this commands: -
🎉 Congrats Start coding your project.