pgpm projections
One Schema, Every Shape
Turn any Postgres schema, from a pg_dump, a .sql file, a pgpm module or a live database, into the shape you need: a module, one SQL script, a migration or a bundle.
Parsed with the real Postgres parser; no regex rewriting
Diff modules, dumps and live databases into ALTERs
Every projection deploys to the identical catalog
Import, reshape, diff and ship Postgres schemas
pgpm import turns a raw pg_dump or .sql file into a pgpm module with deploy, revert and verify per object.
Reshape a module from one statement per change to the whole schema as one change, without changing what it deploys.
Compare tables column by column and constraint by constraint, so a change emits ALTER TABLE, not a rebuild.
Partition one module into several, such as app and security, with the requires between them generated.
Emit a bundle that powers pgpm deploy --fast: one-shot SQL plus a bulk migration ledger.
pgpm materialize re-targets a Supabase-shaped package to plain Postgres and back.
Import a dump into a pgpm module, then reshape it to any granularity.
Diff two versions and emit the delta as a pgpm migration module and as one SQL file, verified against a scratch database.