Nada is an embedded domain-specific language (DSL) for building MPC programs for the Nillion Network.
All installation and development dependencies are fully specified in pyproject.toml
. The project.optional-dependencies
object is used to specify optional requirements for various development tasks. This makes it possible to specify additional options (such as docs
, lint
, and so on) when performing installation using pip:
python -m pip install .'[docs,lint]'
The documentation can be generated automatically from the source files using Sphinx:
python -m pip install .'[docs]'
cd docs
make html
Unit tests are executed and their coverage is measured when using pytest (see the pyproject.toml
file for configuration details):
python -m pip install .'[test]'
python -m pytest
Style conventions are enforced using Pylint:
python -m pip install .'[lint]'
python -m pylint nada_dsl