Skip to main content

Python SDK to create Model Generators and add them into the BAEC platform.

Project description

BAEC Model Generator SDK

Python SDK to create Model Generators and add them into the BAEC platform.

Checked with mypy Code style: black Imports: isort Coverage Status

This repository is created by CEMS BV.

Installation

To install a package in this repository run:

$ pip install baec

ENV VARS

To use baec with FitCore to fit and predict settlements, 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 personal-access-tokens and create a new user token.

Contribution

Environment

We recommend developing in Python 3.12 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:

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:

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.

black --config "pyproject.toml" src/baec tests example
isort --settings-path "pyproject.toml" src/baec tests example

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:

set -a; source ./*.env; set +a
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.10

Install pip-tools with:

pip install pip-tools

Generate requirements.txt file with:

pip-compile --extra=test --extra=lint --extra=docs --extra=aws --output-file=requirements.txt pyproject.toml

Update the requirements within the defined ranges with:

pip-compile --upgrade --extra=test --extra=lint --extra=docs --extra=aws --output-file=requirements.txt pyproject.toml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

baec-0.1.0.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

baec-0.1.0-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

Details for the file baec-0.1.0.tar.gz.

File metadata

  • Download URL: baec-0.1.0.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for baec-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7c8d8155d483a16103ec14bd1cf48e53fdb9098d7f02a512f244727ece18fd5d
MD5 53101daf65058b9d555dfb4e717df005
BLAKE2b-256 67aab852cad8de80ae64645c77f7c9026347eeb9a21e21a9e945e510511cd582

See more details on using hashes here.

File details

Details for the file baec-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: baec-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for baec-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e2585c3dee323841255c5fd399e1be1a900a6a1c3b86af4dfa221818c8736298
MD5 8a68b1d1fab166cef7b179167b52a570
BLAKE2b-256 324390d58584971e7e2187462f5b828248eab66f7103fa10305c7db80d396b47

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page