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
Laravel Dacapo

Laravel Dacapo Laravel Package

ucan-lab/laravel-dacapo

View on GitHub
Deep Wiki
Context7

Laravel migration support tools

Frequently asked questions about Laravel Dacapo
What is ucan-lab/laravel-dacapo used for?
ucan-lab/laravel-dacapo is a Laravel developer tooling package that generates migration files from an existing database schema. It is intended for schema-first development and legacy-database onboarding, not for application runtime architecture. Install it as a require-dev dependency and run the Artisan command against a staging or schema-only database.
How do I install laravel-dacapo in a Laravel project?
Install it with composer require --dev ucan-lab/laravel-dacapo and run php artisan dacapo against the database connection you want to reverse-engineer. Keep the connection read-only and point it at a staging or schema-only clone, never production. Review the generated migration files before committing them as a baseline.
Which Laravel and PHP versions does laravel-dacapo support?
Release 5.2.0 adds PHP 8.2 support, but the package does not publish a formal compatibility matrix. Its test matrix references orchestra/testbench v7.17.0 and PHPUnit 9.5.27, which points to Laravel 9-era testing. Teams on newer Laravel or PHP versions should validate compatibility explicitly in a sandbox before adopting it.
Which database drivers and schema features does laravel-dacapo support?
The release notes do not document a complete database driver or schema-feature matrix. Validate your target driver against representative features such as foreign keys, indexes, composite keys, views, enums, and stored procedures. Run php artisan dacapo against a schema-only staging clone and review the generated migrations for driver-specific constructs.
Is laravel-dacapo safe to run against a production database?
No, laravel-dacapo is a development dependency and should not be run directly against production. Use a staging database or a schema-only clone with a read-only connection. Do not auto-commit generated migrations without review because incorrect output can have high downstream impact.
Does the new Artisan console UI in 5.2.0 affect non-interactive CI execution?
The 5.2.0 release adds new Artisan console UI support and fixes a failure where php artisan dacapo hit array_intersect_key(): Argument #2 must be of type array, null given. Because interactive console behavior can change, verify non-interactive execution in CI with a smoke-test generation. Add a CI or manual check if you automate migration generation.
Can I extend or customize laravel-dacapo internals?
Version 5.2.0 includes internal refactors to MigrationFile, DatabaseDriver, and Stubs, so custom extensions that rely on these internals may be affected. The package does not document a stable extension-point contract. Inspect your customizations against the refactored areas before upgrading.
Is laravel-dacapo generated migration output deterministic enough for review and CI diffing?
The release notes do not state whether generated output is deterministic enough for reliable CI diffing. Treat generated migrations as reviewable artifacts and store diffs in pull requests so reviewers can assess ordering, foreign keys, and indexes. Separate one-time baseline generation from ongoing schema-drift checks.
What are alternatives to laravel-dacapo for generating migrations from an existing database?
Alternatives include Kitloong/laravel-migrations-generator, oscarafdev/migrations-generator, and manually authored baseline migrations. Evaluate each alternative against your Laravel version, database driver, and required schema features. laravel-dacapo is a reasonable fit when you want a dev-only Artisan command and can review generated output.
How is laravel-dacapo maintained and what is the upgrade path from 5.1.2 to 5.2.0?
Upgrading from 5.1.2 to 5.2.0 is a routine minor upgrade with no explicitly documented breaking changes. Update the lockfile, run your existing test suite, and execute a smoke-test generation against a known schema. The release shows positive maintenance signals such as static analysis improvements, security advisory dependency checks, dependency pinning, Renovate configuration, and PHP 8.2 support, but it lacks a compatibility matrix and upgrade guide.
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.
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
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