Skip to main content

Lumida: light on your data

Point Lumida at your databases, read-only. It finds the relationships nobody documented, learns what normal looks like for every table and column, and tells you every morning what's wrong, what it breaks and why, with the evidence.

It runs entirely on your own machines. There's no account, no sign-up and no telemetry. Your data, and even your table names, never reach Lumida's makers.

Install

pip install lumida                 # Postgres support included
pip install "lumida[all]"          # + MySQL, Oracle, Snowflake drivers

Requires Python 3.12+.

Start

lumida setup     # where Lumida keeps what it learns (any Postgres), and your admin account
lumida serve     # runs Lumida: the nightly checks, and the web app

Open http://127.0.0.1:8000, log in, and go to Databases → Add a database. It shows a script for the read-only login and tests the connection; then press Run now.

Connection URLs stay in .env on your machine, under a name you choose:

SHOP_DB_URL=postgresql+psycopg://readonly_user:<password>@db-host:5432/shop

Prefer Docker? One docker compose up -d brings Lumida and its own Postgres. See the install guide.

What it finds

  • Structure: missing keys, dropped columns, changed types, unindexed links.
  • Relationships: links nobody declared, orphan rows, duplicates.
  • Values: sudden empties, out-of-range numbers, "USA" next to "US", near-duplicate emails.
  • Business rules: "shipped after ordered", "total = sum of lines". AI proposes, you approve.
  • Loads: volume drops, tables that stopped updating, missed deadlines; it knows weekdays and closed days.
  • Unusual rows, copies that disagree (app database vs warehouse) and personal data in unexpected places.

Every problem comes with real numbers and the IDs of the rows involved. Confirm or dismiss it, and Lumida remembers.

How it stays safe

  • Read-only: a read-only login, read-only transactions, timeouts on every query. It never writes to your databases.
  • Counted in place: the counting happens inside your database. Only counts, statistics and row IDs come back.
  • AI is optional and yours: bring any OpenAI-compatible service, a local model (Ollama, LM Studio, vLLM) or Gemini, with your own key. AI only proposes; people approve. LUMIDA_OFFLINE=true blocks every outside connection.

In CI

Keep approved rules in git and fail the build when data breaks them:

lumida rules export shop -o lumida-rules.yaml
lumida check --rules lumida-rules.yaml --connection-ref STAGING_DB_URL

Supports PostgreSQL, MySQL/MariaDB, SQL Server, Oracle and Snowflake.

Open source under the Apache 2.0 licence: https://github.com/Rohan708/Lumida

Metadata

Release files for lumida 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lumida 0.4.0
File Size Uploaded
lumida-0.4.0.tar.gz 244.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lumida 0.4.0
File Interpreter ABI Platform
lumida-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 556.8 kB

Release files / lumida-0.4.0.tar.gz

Download URL lumida-0.4.0.tar.gz
Size 244.8 kB
Tags Source
SHA-256 checksum
How to use checksums
098a2428e10ab18cf4b8e7df3f64b27ffeee82cbeecc541d308c76511198a90c
BLAKE2b-256 checksum
How to use checksums
28b4a225258bcb0fc5e598db41cc67a947188d7d2c17c6a8baeba9f2eff53375
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / lumida-0.4.0-py3-none-any.whl

Download URL lumida-0.4.0-py3-none-any.whl
Size 311.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
17c6aead1d1d890e52d305fb2b5e3afd6073d300f712d3c409599cc5e92e3cc5
BLAKE2b-256 checksum
How to use checksums
ae33d08c4e8dda5f528f5d3e7992488887166e46fc6611ead9ed5a8cd90e3476
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page