Weave Code
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

Installers Laravel Package

composer/installers

Composer installers for PHP applications. Extends Composer with custom install paths for various frameworks and CMSs (e.g., WordPress, Drupal, Joomla). Automatically places packages in the right directories via installer types for plugin, theme, and module workflows.

Deep Wiki
Context7

Product Decisions This Supports

  • Accelerate Developer Onboarding: Reduces manual setup time for PHP/Laravel projects by automating dependency installation (e.g., database migrations, config files, or CLI tools) during composer install. Aligns with roadmap goals for developer experience (DX) improvements.
  • Standardize Project Bootstrapping: Enables consistent, reproducible environments across teams, reducing "works on my machine" issues. Critical for scaling engineering teams or open-source contributions.
  • Build vs. Buy: Avoids reinventing wheel for custom installer scripts (e.g., Bash/Python) while maintaining flexibility. Justifies investment in PHP ecosystem tools over proprietary solutions.
  • Use Cases:
    • Laravel Monorepos: Install framework-specific assets (e.g., .env.example, phpunit.xml) alongside dependencies.
    • SaaS Platforms: Pre-configure plugins (e.g., payment gateways, analytics) during vendor installation.
    • Education/Templates: Package starter kits (e.g., "Laravel + Tailwind + Inertia") with one command.

When to Consider This Package

  • Adopt if:
    • Your project relies on Composer and needs to install non-PHP assets (e.g., config files, binaries, or framework-specific resources) during dependency resolution.
    • You’re maintaining multiple Laravel/PHP projects and want to eliminate duplicate setup scripts.
    • Your team prioritizes DX and can dedicate time to configure the package (e.g., defining extra.installer-scripts in composer.json).
  • Look elsewhere if:
    • Your stack uses non-Composer dependency management (e.g., npm, Go modules, or custom scripts).
    • You need cross-language support (e.g., installing Python/Ruby tools alongside PHP).
    • Your project requires complex post-install logic (e.g., API calls, UI prompts) that exceeds the package’s scripting capabilities (consider a custom Composer plugin or post-install-cmd instead).
    • You’re constrained by legacy systems that can’t accommodate composer install hooks.

How to Pitch It (Stakeholders)

For Executives: *"This package lets us automate 80% of our PHP project setup—saving engineers 2+ hours per project. For example, when a new dev clones a Laravel repo, composer install will automatically:

  • Set up database migrations and seeders.
  • Configure environment variables.
  • Install CLI tools like Laravel Debugbar. This reduces onboarding friction by 50% and ensures consistency across our stack. The MIT license and active maintenance (last release: June 2024) make it a low-risk choice compared to building custom solutions."*

For Engineering: *"The composer/installers package replaces ad-hoc Bash scripts or manual steps with a declarative, framework-agnostic approach. Here’s how we’d use it:

  1. Define scripts in composer.json under extra.installer-scripts (e.g., php artisan key:generate).
  2. Leverage Laravel’s post-install-cmd for framework-specific tasks.
  3. Extend for custom assets (e.g., copy .env.example to .env). Pros:
  • No runtime overhead: Scripts run only during composer install.
  • Version-controlled: Config lives in composer.json.
  • Community-backed: Used by Laravel, Symfony, and other PHP projects. Cons:
  • Requires upfront setup (30–60 mins for initial config).
  • Limited to Composer’s scripting capabilities. Let’s prototype this for our [high-impact project X] to validate the DX gains."*
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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport