meridian_uiview_core
The shared platform-neutral Rust core of the meridian design language: prost types + ProtoPaths + RequestBuilder + render helpers + the wasm bundle the web renderer consumes.
| Latest | 0.6.0 |
|---|---|
| Versions | 9 |
| Category | Modules & tooling |
| Maintainers | Matt Marshall |
| Registry | https://registry.tbzl.dev/modules/meridian_uiview_core/ |
| Source | github.com/meridian-ux/meridian-uiview-core |
bazel_dep(name = "meridian_uiview_core", version = "0.6.0")
View source & releases on GitHub ↗
The shared, platform-neutral Rust core of the meridian design language.
- prost types for
meridian.ui.v1(PanelDescriptor& friends) andmeridian.theme.v1(Theme), generated from the meridian-schemas proto contracts viarules_rust_prost(consumed cross-repo as@meridian_schemas//proto:…). ProtoPaths— field-path accessor over prost messages (drivesTableColumn.field_path/FieldBinding.row_field).RequestBuilder— turns anRpcCall+ runtime context into a request.- render / scoring helpers (
render_table,render_gallery,format_cell, …). uiview_wasm— the wasm-bindgen bundle the web renderer loads.
Two downstream consumers, each in its own module so renderers never depend on each other:
meridian-uiview-core (this repo, rust)
├── //rust/uiview (native lib) ─▶ meridian-tui
├── //rust/uiview:theme_proto ─▶ meridian-tui
└── //rust/uiview:uiview_wasm (wasm) ─▶ meridian-web
Build
bazel build //rust/uiview:uiview //rust/uiview:uiview_wasm //rust/uiview:theme_proto
bazel test //rust/uiview:uiview_test
The authoritative build is Bazel. The cargo build.rs path (proto codegen for
plain cargo) needs the proto sources locally and is not wired in the standalone
repo; use the Bazel bazel_proto feature (the default here).
Conformance#
4 findings across 2 invariants. 19 contested atoms. See how gating works or the full report.
| version | toolchain |
|---|---|
0.6.0 | //rust:prost_toolchain |
0.6.0 | @rules_rust_wasm_bindgen//:default_wasm_bindgen_toolchain |
0.6.0 | @rust_toolchains//:all |
| repo | extension |
|---|---|
crates | @rules_rust//crate_universe:extensions.bzl |
Contested atoms
Third-party modules where this module resolves a different version than others do. Not a violation of anything this module did — it is the actionable form of a registry-level convergence finding, and the sentence a maintainer can act on.
| Atom | Resolved here | Elsewhere |
|---|---|---|
apple_support | 1.24.2 | 2.2.0 ×1 |
aspect_bazel_lib | 2.22.5 | 2.8.1 ×1 |
aspect_rules_js | 3.1.2 | 2.1.3 ×1 |
bazel_lib | 3.2.2 | 3.0.0 ×12 |
bazel_skylib | 1.8.2 | 1.9.0 ×2 |
gawk | 5.3.2.bcr.3 | 5.3.2.bcr.1 ×12 |
gazelle | 0.30.0 | 0.36.0 ×140.44.0 ×10.51.0 ×3 |
jq.bzl | 0.4.0 | 0.1.0 ×12 |
nlohmann_json | 3.6.1 | 3.12.0.bcr.1 ×1 |
package_metadata | 0.0.2 | 0.0.5 ×3 |
protobuf | 33.4 | 34.0.bcr.1 ×2 |
rules_go | 0.39.1 | 0.60.0 ×18 |
rules_jvm_external | 6.7 | 6.8 ×4 |
rules_nodejs | 6.7.4 | 6.3.0 ×16.7.3 ×1 |
rules_python | 1.7.0 | 2.0.1 ×1 |
rules_swift | 3.1.2 | 3.6.1 ×1 |
tar.bzl | 0.10.4 | 0.5.1 ×110.6.0 ×1 |
upb | 0.0.0-20220923-a547704 | 0.0.0-20230516-61a97ef ×1 |
yq.bzl | 0.3.4 | 0.1.1 ×12 |
Dependencies#
Depends on
Used by (2 in the registry)
Versions#
9 published versions, newest first. Each resolves to an immutable, integrity-checked archive.
| Version | Integrity (sha256) | Source archive |
|---|---|---|
0.6.0 latest | DuVLLmsGbMMcx20Z… | tag archive ↗ |
0.5.0 | 29C0RDpagcd8lkip… | tag archive ↗ |
0.4.0 | lp9OnJ31IG4qZAOm… | tag archive ↗ |
0.3.1 | 4yKWsXtPJMUl6N/t… | tag archive ↗ |
0.3.0 | rGKMI6Lv5K6/bQ4n… | tag archive ↗ |
0.2.0 | 7KIKV6itZxKMCXfX… | tag archive ↗ |
0.1.2 | izGiaI4MC2MHogUS… | tag archive ↗ |
0.1.1 | EVekVh8XqKYTHBUT… | tag archive ↗ |
0.1.0 | zN9mai1PVOvOmLap… | tag archive ↗ |