Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Phinx Bundle Laravel Package

mvrhov/phinx-bundle

Symfony bundle that integrates Phinx database migrations into your app, letting you configure Phinx and run migration commands through Symfony’s console. Useful for managing schema changes across environments with a familiar, versioned migration workflow.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Migration tooling strategy for Symfony-era services. This package is a Symfony bundle (not a Laravel package) that wires Phinx into the Symfony console. Its only real decision value is answering: "Do we keep the existing Phinx-based migration workflow in our legacy Symfony services, or fund a migration to native framework migrations?"
  • Build vs. buy vs. adopt. The bundle exists purely to avoid writing glue code (DI config, console command registration) around Phinx. That glue is ~1–2 days of engineering. Given the package is unmaintained, the honest answer is build the 50-line integration yourself or use Phinx directly rather than take a dependency.
  • Framework-agnostic schema ownership (the one genuine use case). If we operate a polyglot PHP estate (e.g., a Laravel app and a Symfony service sharing a database or schema lineage), Phinx's framework-independent migration format is a legitimate argument for a shared migration source of truth. This bundle is a thin shell over that idea — but it's not the right shell in 2024.
  • Roadmap input: technical debt triage. A dependency graph showing mvrhov/phinx-bundle is effectively a signal to schedule an audit of that service's migration path, not a feature decision. It should appear on the "legacy risk register," not the product roadmap.
  • Not a Laravel decision at all. For our Laravel applications, Laravel's first-party migrations (artisan migrate, schema builder, doctrine/dbal for column changes) already cover this ground with active maintenance. This package should be explicitly ruled out of any Laravel RFC.

When to Consider This Package

Only consider it if all of the following are true:

  • You are maintaining an existing Symfony 2.x/3.x application that already runs this bundle in production.
  • The application is pinned to PHP 5.6–7.x and has no near-term PHP 8 upgrade on the roadmap.
  • The cost of replacing the bundle now exceeds the risk of carrying it (i.e., migrations run infrequently and are executed by a small, experienced team).
  • You need to keep Phinx's migration file format for compatibility with another consumer of the same schema.

Look elsewhere — decisively — when:

  • The stack is Laravel. Use php artisan make:migration / migrate. No third-party bundle is warranted; there is no integration gap to fill.
  • You need a maintained Phinx integration. Use robmorgan/phinx directly (it's a standalone CLI — no framework glue required) or the actively maintained community fork, and invoke it from a Composer script or CI step.
  • You're on PHP 8+ or Symfony 5/6/7. Last release was 2017-12-28; there is no credible path to modern framework compatibility without forking.
  • You need security or supply-chain assurance. 6 stars, 0 dependents, single maintainer, 7+ years stale. This fails even a lightweight vendor-risk review: no CVE response capability, no PHP version support matrix, effectively zero community surface for issue triage.
  • You need team scalability. Onboarding engineers onto an abandoned, sparsely documented bundle is a recurring cost with no offsetting benefit over native tooling.

Recommendation: do not adopt. Treat as replace-on-touch for any existing service; block for new work.

How to Pitch It (Stakeholders)

For executives: We evaluated mvrhov/phinx-bundle, an MIT-licensed integration that connects the Phinx migration tool to Symfony applications. It is not a fit. The last release was December 2017, it has 6 GitHub stars and zero dependent packages, and it targets a Symfony/PHP generation we no longer run. Adopting it would create a single-maintainer dependency with no security response path — a liability, not a capability. Recommendation: no adoption, no spend. This is a zero-cost decision.

For engineering: The integration it provides is trivial — registering Phinx as a console command and wiring a bit of DI config. If a service genuinely needs Phinx, run the standalone robmorgan/phinx CLI from CI or a Composer script; that removes the bundle, the Symfony-version coupling, and the abandoned-maintainer risk in one step. For any Laravel service, this is a non-conversation: native migrations are the maintained, documented, team-familiar default. Use this finding as a trigger to inventory any service currently depending on it and schedule replacement during the next PHP/framework upgrade cycle.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings