fidum/laravel-blueprint-pestphp-addon
A Laravel Blueprint addon that generates Pest PHP tests from your Blueprint draft definitions, so new features come with Pest test coverage automatically. It extends Blueprint's code generation to produce Pest-style tests alongside models, controllers, and migrations.
Architecture fit: The package is a development-time addon that integrates Laravel Blueprint (a code generator) with Pest PHP (a testing framework). It sits in the developer toolchain, not in production runtime. It fits well for teams using Blueprint to scaffold Laravel components and Pest for testing, enabling Blueprint to generate Pest test files instead of PHPUnit tests. The addon is small and focused, aligning with Laravel's ecosystem conventions.
Integration feasibility: Adding the package is straightforward via Composer as a dev dependency. It requires Laravel 10 (as of 2.3.0) and compatible versions of Blueprint and Pest. For teams already on Laravel 10 with Blueprint and Pest, integration is low-effort. The main constraint is the dropped Laravel 9 support: teams on Laravel 9 cannot use 2.3.0 and must either stay on 2.2.4 or upgrade Laravel first.
Technical risk: The primary risk is the breaking change from dropping Laravel 9 support. This is a compatibility break that could block upgrades for teams still on Laravel 9. Secondary risks include version coupling with Blueprint and Pest: if those packages change their APIs, the addon may require updates. The addon is community-maintained (fidum), so long-term support depends on maintainer activity. However, the scope is narrow, reducing risk.
Key questions: Is our application on Laravel 10? Do we use Blueprint for code generation? Do we use Pest for testing? What is our timeline for upgrading from Laravel 9 to 10? Are the versions of Blueprint and Pest we use compatible with this addon's requirements? What is the maintenance status and release cadence of the addon?
Stack fit: The package fits a Laravel 10 stack using Blueprint and Pest. It is not relevant for teams using PHPUnit without Pest or not using Blueprint. It is a dev-only dependency, so it does not affect production deployments.
Migration path: For teams on Laravel 9, the migration path is: first upgrade Laravel to 10 (and dependent packages), then upgrade Blueprint to a Laravel 10 compatible version, then upgrade this addon to 2.3.0. Teams already on Laravel 10 can upgrade directly, but should verify Blueprint and Pest compatibility. If staying on Laravel 9, pin the addon to 2.2.4 and defer upgrade.
Compatibility: The addon requires Laravel 10, Pest (likely v2), and Blueprint (likely v2). Check the addon's composer.json for exact constraints. Ensure CI pipelines use the same versions to avoid test generation discrepancies.
Sequencing: Upgrade Laravel first, then Blueprint, then this addon. Run a test generation dry-run to confirm Pest tests are generated correctly. Update CI scripts if they reference the addon.
Maintenance: Low maintenance burden. The addon is a dev tool; it doesn't run in production. Updates are infrequent. However, because it depends on Blueprint and Pest, major upgrades of those may require addon updates. Monitor releases.
Support: Community-supported via GitHub. Check issue responsiveness and recent commits. The maintainer (dmason30) is active. For critical projects, consider forking or pinning to a stable version.
Scaling: Not applicable in the traditional sense; it's a development tool. It scales with team size: more developers using Blueprint and Pest benefit from consistent test generation. No runtime scaling concerns.
Failure modes: If the addon breaks due to a Blueprint or Pest update, test generation may fail or produce incorrect tests. This could block development workflows. Mitigation: pin versions in composer.json, run tests in CI, and monitor changelogs. The dropped Laravel 9 support is a failure mode for teams that upgrade the addon without upgrading Laravel—Composer will prevent installation, which is a safe failure.
Ramp-up: Minimal for developers familiar with Laravel, Blueprint, and Pest. New team members need to understand that Blueprint generates Pest tests via this addon. Document the workflow in onboarding materials. No specialized training required beyond existing Laravel/Pest knowledge.
How can I help you explore Laravel packages today?