pgpm is a new package manager for PostgreSQL that enables developers to share and reuse application-level database logic (schemas, tables, functions, policies, triggers) as modular, versioned packages. Unlike traditional PostgreSQL extensions that operate at the system level, pgpm works at the application layer using pure SQL, requiring no superuser access or compilation. It organizes code into workspaces with explicit dependency management, automatic resolution, and deterministic deployment order. The tool supports test-driven development with ephemeral databases and CI/CD integration, drawing inspiration from Sqitch while adding recursive composition and modular packaging capabilities.
Table of contents
The Reuse Problem in Database DevelopmentApplication-Layer ModulesWorkspaces and ModulesWhat pgpm DoesTesting and DeploymentDesign PhilosophyGetting Started1 Comment
Sort: