git404hub

what is dpm fr?

open-dpm/dpm — explained in plain English

Analysis updated 2026-05-18

24PythonAudience · dataComplexity · 4/5LicenseSetup · moderate

tl;dr

An open-source toolkit that treats data product schemas, ownership, and rules as versioned files checked automatically in CI, like code.

vibe map

mindmap
  root((dpm))
    What it does
      Versions data schemas as code
      Detects breaking changes in CI
      Enforces deprecation windows
      Tracks PII flags
    Tech stack
      Python
      YAML manifests
      GitLab CI
      GitHub Actions
    Use cases
      Catch breaking schema changes
      Enforce data governance rules
      Conform to enterprise data model
      Visualize product conformance
    Audience
      Data engineers
      Platform teams

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Catch breaking schema changes in a data pipeline before they reach production dashboards.

VIBE 2

Enforce that a data product's PII flags stay consistent with its schema fields.

VIBE 3

Require producers to publish a new major version and deprecation window for breaking changes.

VIBE 4

Check that data products conform to a shared enterprise data model.

what's the stack?

PythonYAMLAvro

how it stacks up fr

open-dpm/dpm0311119/free_registertool18597990650-lab/multi-agent-game
Stars242424
LanguagePythonPythonPython
Setup difficultymoderatehardmoderate
Complexity4/54/53/5
Audiencedatadeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Requires setting up a Python virtual environment and integrating the CLI into GitLab CI or GitHub Actions.

AGPL-3.0 licensed, meaning modified versions used over a network must also make their source code available.

in plain english

DPM stands for Data Product Manifest, an open source toolkit that treats a company's data products the way software teams treat code. Instead of a database schema, its meaning, and who owns it living only as informal team knowledge, DPM stores all of that as versioned files in a Git repository, and checks those files automatically in continuous integration whenever something changes. The problem it addresses is common in data teams: someone renames or removes a column, and overnight several dashboards or a machine learning pipeline quietly break because nobody was warned. With DPM, a producer's change goes through a merge request, and DPM checks in CI whether the manifest is complete, whether it follows quality and governance rules, and whether the change would break existing consumers. A backward compatible change merges normally, but a breaking change cannot simply replace the old version. Instead the producer must publish a new major version of the manifest alongside the old one, mark the old version as deprecated, and give consumers a defined window to migrate before the old version is retired. Privacy and access details also live in the manifest rather than being an afterthought. Each schema field can be flagged as containing personal information, and DPM checks that this flag stays consistent with the product's overall privacy metadata, failing the pipeline if they disagree. The manifest can also document how data is accessed, such as through a specific authentication method at an API gateway, though DPM itself only versions and reviews that description rather than enforcing it at runtime. Beyond individual contracts, products can optionally conform to a shared Enterprise Data Model, a central registry defining business entities like Customer or Order and their required attributes. DPM can then render a graph showing which data products conform to which canonical entities. The project includes a command line tool with commands to validate manifests, detect breaking changes, suggest version bumps, check governance rules, and render this conformance graph, and it ships integration guides for both GitLab CI and GitHub Actions.

prompts (copy fr)

prompt 1
Help me write a DPM manifest for one of my existing data products.
prompt 2
Explain how DPM detects breaking schema changes in a git diff.
prompt 3
Show me how to set up dpm validate and dpm governance in GitHub Actions CI.
prompt 4
Walk me through connecting my data product to a canonical enterprise data model with conforms_to.

Frequently asked questions

what is dpm fr?

An open-source toolkit that treats data product schemas, ownership, and rules as versioned files checked automatically in CI, like code.

What language is dpm written in?

Mainly Python. The stack also includes Python, YAML, Avro.

What license does dpm use?

AGPL-3.0 licensed, meaning modified versions used over a network must also make their source code available.

How hard is dpm to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is dpm for?

Mainly data.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.