Skip to main content

Application DEfinitions

Project description

npm version License: Apache

ade

Application DEfinitions package. Houses the definitions for:

  • Application - uniquely determined by name, [version], [build]
  • Executable - defined for a given application and accessible from application by name
  • Flavor - defined for a given executable and accessible from executable by name
  • Template - a jinja template for an application input file

The relevant data parameterizing supported entities is housed in the Standata repository.

Installation

For usage within a JavaScript project:

npm install @mat3ra/ade

For usage within a Python project:

pip install mat3ra-ade

For development:

git clone https://github.com/Exabyte-io/ade.git

Contributions

This repository is an open-source work-in-progress and we welcome contributions.

We regularly deploy the latest code containing all accepted contributions online as part of the Mat3ra.com platform, so contributors will see their code in action there.

See ESSE for additional context regarding the data schemas used here.

Useful commands for development:

JavaScript/TypeScript

# run linter without persistence
npm run lint

# run linter and save edits
npm run lint:fix

# compile the library
npm run transpile

# run tests
npm run test

# run tests with coverage
npm run test:coverage

# run tests with coverage and check thresholds
npm run test:coverage:check

# generate HTML coverage report
npm run test:coverage:html

Python

# run linter
python -m black src/py/mat3ra/ade/ tests/py/
python -m ruff check src/py/mat3ra/ade/ tests/py/
python -m isort src/py/mat3ra/ade/ tests/py/

# run tests
python -m pytest tests/py/

# run tests with coverage
python -m pytest tests/py/ --cov=mat3ra.ade --cov-report=html

Development: Code/Test Coverage

This project includes comprehensive code coverage reporting with multiple viewing options:

Local Coverage

  • Run npm run test:coverage:html to generate an HTML coverage report locally
  • Open coverage/index.html in your browser to view the report

GitHub Integration

The project uses GitHub Actions to automatically generate and display coverage reports:

  1. PR Coverage Comments: Every pull request automatically gets a coverage report comment showing:

    • Overall coverage percentages
    • Coverage changes compared to the base branch
    • Detailed file-by-file coverage breakdown
  2. Coverage Artifacts: Coverage reports are uploaded as GitHub artifacts for each PR and commit

    • Download from the Actions tab in GitHub
    • Available for 30 days for main branch, 7 days for PRs
  3. GitHub Pages (Optional): Coverage reports are published to GitHub Pages for easy browser viewing

    • Available at: https://exabyte-io.github.io/ade/
    • Updated on every push to main branch

Coverage Thresholds

The project enforces minimum coverage thresholds:

  • Statements: 85%
  • Branches: 80%
  • Functions: 80%
  • Lines: 85%

External Coverage Services

  • Codecov: Coverage data is automatically uploaded to Codecov for historical tracking and trend analysis

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

mat3ra_ade-2026.5.29.post0.tar.gz (128.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mat3ra_ade-2026.5.29.post0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file mat3ra_ade-2026.5.29.post0.tar.gz.

File metadata

  • Download URL: mat3ra_ade-2026.5.29.post0.tar.gz
  • Upload date:
  • Size: 128.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/9.0.0 pkginfo/1.12.1.2 requests/2.34.2 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.10.13

File hashes

Hashes for mat3ra_ade-2026.5.29.post0.tar.gz
Algorithm Hash digest
SHA256 5de1642f824b1c08262cf65475388eb96b6115b3a80d8bdc7da4f7ab3b7a87ad
MD5 85e8dcb69c10426dba2c81f46cf21cbc
BLAKE2b-256 5876fbc3d8123e734ae0db02e32ece5e9a06cf4a9d2acc6f4c6a00cfbe78524e

See more details on using hashes here.

File details

Details for the file mat3ra_ade-2026.5.29.post0-py3-none-any.whl.

File metadata

  • Download URL: mat3ra_ade-2026.5.29.post0-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/9.0.0 pkginfo/1.12.1.2 requests/2.34.2 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.10.13

File hashes

Hashes for mat3ra_ade-2026.5.29.post0-py3-none-any.whl
Algorithm Hash digest
SHA256 6b366162b460b93135b8e90c564b002f312c9964aea785f96fbc711e987db061
MD5 47ff10b769bdc8c465d9b4ad41c58d59
BLAKE2b-256 ffd4e8f1b30a2aaecf9c4bd5f57cf1ca1a01ccd743b143d64bd5e24c32dc5296

See more details on using hashes here.

Supported by

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