Skip to main content

PROperty DEfinitions

Project description

npm version License: Apache

prode

PROperty DEfinitions - prode - houses Property entity definitions for use in the Mat3ra platform.

Installation

For usage within a javascript project:

npm install @exabyte-io/prode

For development:

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

Contribution

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:

# 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

Using Linter

Linter setup will prevent committing files that don't adhere to the code standard. It will attempt to fix what it can automatically prior to the commit in order to reduce diff noise. This can lead to "unexpected" behavior where a file that is staged for commit is not identical to the file that actually gets committed. This happens in the lint-staged directive of the package.json file (by using a husky pre-commit hook). For example, if you add extra whitespace to a file, stage it, and try to commit it, you will see the following:

  repo-js git:(feature/cool-feature)  git commit -m "Awesome feature works great" Preparing...
✔ Running tasks...
✖ Prevented an empty git commit!
✔ Reverting to original state because of errors...
✔ Cleaning up...

   lint-staged prevented an empty git commit.
  Use the --allow-empty option to continue, or check your task configuration

husky - pre-commit hook exited with code 1 (error)

The staged change may remain but will not have been committed. Then it will look like you still have a staged change to commit, but the pre-commit hook will not actually commit it for you, quite frustrating! Styling can be applied manually and fixed by running:

npm run lint:fix

In which case, you may need to then add the linter edits to your staging, which in the example above, puts the file back to identical with the base branch, resulting in no staged changes whatsoever.

ProDe

TheProDe package is central to many other entities in the Mat3ra workflow ecosystem, where ProDe houses entity definitions for:

  • Property - the basic definition of a property

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_prode-2026.3.30.post0.tar.gz (138.4 kB view details)

Uploaded Source

Built Distribution

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

mat3ra_prode-2026.3.30.post0-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file mat3ra_prode-2026.3.30.post0.tar.gz.

File metadata

  • Download URL: mat3ra_prode-2026.3.30.post0.tar.gz
  • Upload date:
  • Size: 138.4 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.33.1 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.10.13

File hashes

Hashes for mat3ra_prode-2026.3.30.post0.tar.gz
Algorithm Hash digest
SHA256 c4fe5c78177499ca0c5075d57dfe768335f735ed61f4a24f5fd1ff37b9ff137d
MD5 721e8525c1b298c5d8de2394998a0f49
BLAKE2b-256 c2bd8e2e43fa7751cecd9a9dca81d6c57bf6e150ade99af479e436f3622b123f

See more details on using hashes here.

File details

Details for the file mat3ra_prode-2026.3.30.post0-py3-none-any.whl.

File metadata

  • Download URL: mat3ra_prode-2026.3.30.post0-py3-none-any.whl
  • Upload date:
  • Size: 4.2 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.33.1 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.10.13

File hashes

Hashes for mat3ra_prode-2026.3.30.post0-py3-none-any.whl
Algorithm Hash digest
SHA256 3c41e2ba835c07acb7753d19eba5748b8c8118378dad48c6abe16bd5df130c99
MD5 c416b1ac9debd00156a0b78c9afb2d4e
BLAKE2b-256 2bc4b8301de4ce4489fc82a29c430dd4f2a2d345ec80e1e9eb448e89b32c6d59

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