Jupyter Notebook

Manage schema modules

LaminDB gives you a framework for managing complex typed metadata schema-full:

  1. Any LaminDB instance can plug in schema modules

  2. Each schema module is a Python package that defines related registries through their records (Record)

  3. Every registry corresponds to an auto-generated corresponding SQL table

Basic data management: lnschema_core

The core schema module is built into the core LaminDB API with its own Python package lnschema_core with repository here.

All of LaminDB’s core classes, like Artifact, Transform, User, etc. are registries defined in the core schema. You can see their source code here.

View the schema

For your given instance, you view the registries by running lamin info schema on the command line.

Your browser will show an interactive version of a graph similar to the one on the right. In the left side panel, you can choose to hide the relationships you’re not interested in and you’ll be able to trace some relationships.

Basic biological entities: bionty

See bionty.

Custom schema modules

You can set up your own schemas & registries or reach out for support within Lamin’s team or enterprise plan.

You’ll see how simple it is if you look at this example: wetlab/models.py. You only need a single Python file to define your data models as lamindb records.

Schema management needs two CLI calls (see Install & setup):

  • lamin migrate create

  • lamin migrate deploy