Environment setup
In this tutorial, we will go through numerous steps to help you set up a productive development environment that will allow you to contribute to Virdx codebases.
Install and set up pixi
Pixi is QuantCo's and our preferred way of managing dependencies for Python projects.
Follow installation instructions at pixi.sh. Read through their getting started pages to get an overview over the intricacies of the tool.
Next, make sure you have access to the virdx-internal conda channel by following the guide
Make sure that you add our virdx-channel to your global pixi config:
nano ~/.pixi/config.toml
and paste the following in there:
default-channels = [
"https://quantco.jfrog.io/artifactory/api/conda/virdx",
"conda-forge",
]
This will allow you to install virdx packages globally.
Try to use conda-forge dependencies as much as possible. This ensures that your project can be packaged and deployed as a dependency for other projects in the virdx ecosystem.
If you must use a pypi dependency, let @Taylor Hanayik know. We can probably find an alternative, or create a custom conda package from the pypi package (but this is not ideal long term).
Other tooling
Using pixi's global dependency manager, we can install numerous other useful tools:
pre-commit:pixi global install pre-commitlazygit: a TUI git applicationbat: a neatercatfzf: fuzzy CTRL+R finder
Other tools:
thefuck: corrects typos in CLI commands (install withuv tool install --python 3.11 --with setuptools thefuck)