Mosaic¶
Formerly Hippo. The component was renamed to Mosaic (ADR-0004): the distribution is
datahelix-mosaic, the import package ismosaic, and the CLI ismosaic. Existing code and deployments keep working through a deprecation window —import hippo, thehippocommand,hippo.yaml,HIPPO_*environment variables, andhippo.*entry-point groups are all still honored (with deprecation warnings). See Installation for the upgrade notes.
A runtime for LinkML schemas. Point it at a schema and you get a typed Python SDK, a REST API, a relational database with append-only PROV-O provenance, and CEL-based dynamic validation — without writing any of that infrastructure yourself. The schema defines the application; Mosaic runs it.
Start here¶
- Why Mosaic? — the elevator pitch and core idea.
- Introduction — what Mosaic does and how it fits together.
- Installation — install from PyPI or source.
- Quick Start — your first schema, store, and query in 10 minutes.
Build¶
- Schema Guide — author entities, attributes, and relationships in LinkML.
- Data Model — how schemas map to relational storage and the graph-shaped API.
- Configuration —
mosaic.yaml, storage backends, and adapters.
Use¶
- CLI Reference —
mosaiccommand surface. - TUI — interactive terminal browser (
mosaic tui) over the SDK or REST API. - API Reference —
MosaicClientPython SDK. - Typed Client — schema-derived typed client.
Extend¶
- Reference Loaders and Writing a Reference Loader — pull static reference data into Mosaic.
- Writing a Recipe, Installing Recipes, Recipe Reference — package and share schema fragments.
Background¶
- Design Principles — what Mosaic is opinionated about, and why.
- Comparison — how Mosaic relates to LinkML, Datasette, and friends.
Mosaic is open source under the MIT license. Source at github.com/BU-Neuromics/hippo.