This repository is created by CEMS BV and helps the user to access and process API calls to the NUCLEI environment.
To install this package, including the NucleiClient library and its dependencies, run:
pip install cems-nuclei[client]To skip the installation of the NucleiClient library, in case you do not need it (e.g. only use pure requests), run:
pip install cems-nucleiTo use nuclei add the follow ENV vars to your environment. Or provide them when asked.
* NUCLEI_TOKEN
- Your NUCLEI user token
You can obtain your NUCLEI_TOKEN on NUCLEI.
Go to Access token and create a new user token.
This project is managed with uv. Install uv, then sync the environment
(including all optional extras) and it will create a .venv for you:
uv sync --all-extrasBuild the docs:
uv sync --extra docs --extra client
uv run sphinx-build -b html docs publicNote: You'll need to set the NUCLEI_TOKEN environmental variable.
You can get your token at: https://cemsbv.crux-nuclei.com
We format our code with black and isort.
uv run black --config "pyproject.toml" src/nuclei tests
uv run isort --settings-path "pyproject.toml" src/nuclei testsTo maintain code quality we use the GitHub super-linter.
To run the linters locally, run the run_super_linters.sh bash script from the root directory.
Test the software with the use of coverage:
uv sync --all-extras
uv run coverage run -m pytestDependencies are locked in uv.lock. To update it after changing pyproject.toml, run:
uv lock