Livt is the standard-library meta-package for Livt projects. It gives
applications and larger packages one dependency that brings in the official Livt
library packages as a tested, compatible set.
The 0.3.0 package is a manifest bundle. It does not publish production source components of its own; it pins versions of the focused library packages that make up the current Livt standard library and provides an integration test for the complete package set.
[dependencies]
Livt = "0.3.0"Use Livt when an application wants the full standard library surface. Smaller
reusable packages should usually depend only on the specific package they need,
such as Livt.Math, Livt.IO, or Livt.Crypto.
Livt 0.3.0 pins this compatible package set:
| Package | Version | Role |
|---|---|---|
Livt.Base |
0.2.0 |
Foundational helpers and common library components |
Livt.Math |
0.3.1 |
Numeric, fixed-point, arithmetic, lookup, and random helpers |
Livt.Net |
0.25.0 |
Ethernet, ARP, IPv4, ICMP, TCP, HTTP, and EthernetLite helpers |
Livt.Crypto |
1.0.3 |
Cryptographic primitives, hashes, MACs, KDFs, AEADs, and DRBGs |
Livt.ML |
0.2.0 |
Fixed-size ML building blocks and approximation/reference components |
Livt.IO |
0.2.0 |
RAM, UART, and I²C components |
Livt.Bus |
0.3.0 |
Reusable AXI4-Lite, Avalon, Wishbone, and bridge components |
Livt.Utils |
0.1.0 |
General-purpose utility components such as CRC32 |
The authoritative dependency pins live in livt.toml. Keep the
table above aligned with that manifest when preparing a new meta-package release.
Livt is for consumers that want the whole standard library. It is intentionally
not a replacement for precise dependencies in small reusable libraries.
Good fits for depending on Livt:
- application packages
- board demos and integration projects
- examples that intentionally show multiple standard-library areas
- internal projects that prefer one coordinated upgrade point
Good fits for depending on focused packages directly:
- a math helper package that only needs
Livt.Math - a networking package that only needs
Livt.IO - a crypto wrapper that only needs
Livt.Crypto - a utility package that should stay dependency-light
Run the complete standard-library verification from this repository:
make testThe command synchronizes the pinned package set, runs every package's own test
suite in an isolated writable workspace using the dependency versions pinned by
this meta-package, and then runs this project's combined compatibility test.
JUnit reports are written below
.livt/reports/standard-library.
To run only the combined compatibility test:
make test-integrationSupporting notes live in docs/package-set.md and
docs/usage.md.
- Keep
Livtfree of production source components. - Keep package-specific tests in their owning repositories; this project only owns cross-package compatibility coverage and orchestration.
- Add new standard-library packages here only after they are publish-ready on their own.
- Update
livt.toml, the README package table, anddocs/package-set.mdtogether. - Use focused package dependencies for reusable libraries unless the full bundle is genuinely intended.
Future Livt releases should track stable combinations of the standard library
packages. The meta-package version can move independently from the individual
package versions whenever the compatible bundle changes.
This project is licensed under the MIT License. See LICENSE.