Awesome
LCAx
The goal for LCAx is to make an open, machine and human-readable data format for exchanging LCA results, EPD's and assemblies.
We propose a simple three level data format with information on project, assembly and EPD level, written in an open data format and paired with a validator for a more robust and standardized format. We intend to create connections to existing tools and API’s.
Our goal is making LCA calculations more accessible, transparent, and open.
Rust
Install Rust
Head over to Rust's installation page
Install Rust Dependencies
cargo update
Run Rust Tests
cargo test --package lcax --target x86_64-unknown-linux-gnu
Export JSON Schema
cargo run --target x86_64-unknown-linux-gnu --bin export-schema > lcax.schema.json
Python
Install Python Dependencies
pip install maturin venv
Run Python Tests
maturin develop --extras tests,codegen --target x86_64-unknown-linux-gnu
source .venv/bin/activate .
datamodel-codegen \
--input lcax.schema.json \
--output packages/python/src/lcax/pydantic.py
cd packages/python
pytest tests/
Build Documentation
maturin develop --extras doc --target x86_64-unknown-linux-gnu
mkdocs serve
JavaScript/TypeScript
Install wasm-pack
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
Build JS Package
cd modules/lcax
wasm-pack build --features jsbindings
mv pkg/lcax* ../../packages/javascript/src
Run JS Tests
npm run test