lawsql-components
lawsql-components is the normative component registry and executable reference
for legal readers built on the LawSQL ecosystem. Its primary product is
documentation: legal meaning, ownership, data lineage, composition, non-inferences,
presentation rationale, accessibility, and responsive behavior are recorded before
CSS or application adapters.
The repository deliberately separates three layers:
- Legal components describe identity, meaning, composition, ordering, and claims that the data must not imply.
- Presentation components define semantic HTML, interaction, accessibility, responsive behavior, and styling rationale.
- Host adapters map those contracts into LawSQL or Citelaws without moving query, authorization, sanitization, or application-shell ownership here.
Corpus repositories, decision-utils, and statute-utils remain authoritative
for source and artifact semantics. This repository is normative for shared
presentation and integration contracts.
Installation
Install an exact component release:
uv add "lawsql-components==0.1.0"
Python consumers import the typed helpers directly:
from lawsql_components import decorate_legal_tree, prepare_opinions
Stage the dependency-free browser assets into a Django, Datasette, or other static root without network access:
law-components install-assets --output app/static
This writes
app/static/vendor/lawsql-components/0.1.0/lawsql-components.{css,js}. The
equivalent Python API is lawsql_components.resources.install_assets().
The wheel also exposes the compiled registry, source records, schema, specimens,
manifest, and license through lawsql_components.resources. Run
law-components validate to verify the installed bundle from any working
directory.
Development
uv sync --all-groups
npm ci
just resources
just check
Generated outputs are committed. just bundle-check and just generate-check
rebuild into temporary directories and require byte-for-byte parity.
The package release (version) and registry shape (schema_version) evolve
independently. Registry schema version 1 is required in every YAML record and in
dist/registry.json; consumers must reject an unknown schema version before
reading component fields. See versioning and migration.
Public surfaces
- Registry:
lawsql_components.resources.registry_data() - Browser assets:
lawsql_components.resources.asset_bytes()andinstall_assets() - Python:
prepare_opinions,namespace_fragment_ids, anddecorate_legal_tree - Browser entry point:
window.LawSQLComponents.enhance(root = document)
See the generated component index, the architecture guide, and the release procedure.
Release files for lawsql-components 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lawsql_components-0.1.0.tar.gz | 718.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lawsql_components-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / lawsql_components-0.1.0.tar.gz
| Download URL | lawsql_components-0.1.0.tar.gz |
|---|---|
| Size | 718.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
64f91402ae01398491e6ffcb910c6c0ce1707960bf3dc5fcb66fcbbec4d8cb19
|
|
BLAKE2b-256 checksum How to use checksums |
86b52ea2aa3007fcf76bd3fc257e6c773dfabc5af9c8321fa5469614b0c2a2eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / lawsql_components-0.1.0-py3-none-any.whl
| Download URL | lawsql_components-0.1.0-py3-none-any.whl |
|---|---|
| Size | 438.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6df313c36cb6dc4c97d0556ee6d1c9d6f17a774326c58e00c41f35fc99825e91
|
|
BLAKE2b-256 checksum How to use checksums |
b261a3c4865ef965b4d6148e2f863db6fd5b8cc58da42c0776c86aed2db0fd68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|