cakephp/phinx

PHP Database Migrations for Everyone

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 13 minutes ago
Added to GitGenius on September 15th, 2026
Created on December 27th, 2011
Open Issues & Pull Requests: 147 (+0)
GitHub issues: Enabled
Number of forks: 884
Total Stargazers: 4,540 (+0)
Total Subscribers: 131 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 35.1 hours
Mean response time: 174.5 days
90th percentile: 412.0 days
Tracked items: 65

Most active contributors

Sign in to see contributor activity.

How this project is maintained

74% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "enhancement" is answered fastest, typically in about 23 hours, while "bug" waits about 6 days. Three people close 85% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 35
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 2,063 days
Stale 30+ days: 34
Stale 90+ days: 33

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (12)
  • enhancement (12)
  • feature (10)
  • docs (5)
  • major (3)
  • dependencies (1)
  • waiting on feedback (1)

Most active issues this week

Detailed Description

Phinx is a database migration tool for PHP that lets you version-control and manage schema changes through database-agnostic PHP code.

Phinx solves the problem of tracking and applying database schema changes across environments without embedding SQL directly in your codebase. You write migrations as PHP classes that describe changes in a database-neutral way, then execute them to migrate your schema up or down. The tool handles the mechanics of tracking which migrations have run and applying only the pending ones, while also supporting data seeding after schema creation.

Phinx suits any PHP project that needs repeatable, version-controlled database changes—from small applications to large deployments. It works standalone without requiring a full framework or ORM, making it easy to integrate into existing codebases. The tool supports MySQL, PostgreSQL, SQLite, and Microsoft SQL Server. One known limitation is that PostgreSQL does not support setting unique constraints on tables through Phinx.

The project maintains steady activity with regular updates to its codebase. Documentation is comprehensive and available on the project website, with community translations provided. The tool can be installed via Composer or run as a standalone Phar archive, giving flexibility in how it integrates into deployment workflows.