https://github.com/cemsbv/py-pilecore
Public python SDK for the CEMS PileCore web-API
https://github.com/cemsbv/py-pilecore
pthon sdk-python
Last synced: 3 days ago
JSON representation
Public python SDK for the CEMS PileCore web-API
- Host: GitHub
- URL: https://github.com/cemsbv/py-pilecore
- Owner: cemsbv
- License: mit
- Created: 2023-10-16T10:02:20.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2026-02-14T06:07:01.000Z (10 days ago)
- Last Synced: 2026-02-14T09:14:30.064Z (9 days ago)
- Topics: pthon, sdk-python
- Language: Python
- Homepage: https://cemsbv.github.io/py-pilecore/
- Size: 36.3 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# py-pilecore
Public python SDK for the CEMS PileCore web-API
[](http://mypy-lang.org/)
[](https://github.com/psf/black)
[](https://pycqa.github.io/isort/)
[](https://coveralls.io/github/cemsbv/py-pilecore)
This repository is created by [CEMS BV](https://cemsbv.nl/) and is a public python wrapper around the CEMS [PileCore web-API](https://nuclei.cemsbv.io/#/pilecore/api).
# Installation
To install a package in this repository run:
`$ pip install py-pilecore`
## ENV VARS
To use `py-pilecore` 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](https://nuclei.cemsbv.io/#/).
Go to `personal-access-tokens` and create a new user token.
# Contribution
## Environment
We recommend developing in Python3.11 with a clean virtual environment (using `virtualenv` or `conda`), installing the requirements from the requirements.txt file:
Example using `virtualenv` and `pip` to install the dependencies in a new environment .env on Linux:
```bash
python -m venv .env
source .env/bin/activate
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .
```
## Documentation
Build the docs:
```bash
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install .
sphinx-build -b html docs public
```
## Format
We format our code with black and isort.
```bash
black --config "pyproject.toml" src/pypilecore tests notebooks
isort --settings-path "pyproject.toml" src/pypilecore tests notebooks
```
## Lint
To 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.
## UnitTest
Test the software with the use of coverage:
```bash
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .
coverage run -m pytest
```
## Requirements
Requirements are autogenerated by the `pip-compile` command with python 3.11
Install pip-tools with:
```bash
pip install pip-tools
```
Generate requirements.txt file with:
```bash
pip-compile --extra=test --extra=lint --extra=docs --output-file=requirements.txt pyproject.toml
```
Update the requirements within the defined ranges with:
```bash
pip-compile --upgrade --extra=test --extra=lint --extra=docs --output-file=requirements.txt pyproject.toml
```
Note that `pip-compile` might run from your global path. You can also invoke the compile
command from the `piptools` module on a specific python installation (e.g. within a virtualenv):
```bash
python -m piptools compile