- Does patricktalmadge/bootstrapper work with Laravel 9, 10, or 11?
- No. It targets Laravel 4 and 5 and depends on illuminate/html, which Laravel removed from core in 5.0. Modern Laravel uses Blade components and different form builders, so Bootstrapper will not install or run cleanly without a fork. For current projects, use Blade components or a maintained package instead.
- How do I install patricktalmadge/bootstrapper?
- Install via Composer in a compatible Laravel 4 or 5 project. You must also have illuminate/html or laravelcollective/html available because Bootstrapper builds on Laravel's HTML and Form helpers. Register the service provider and facade aliases, then use the static generators in Blade. Expect version constraints to pin you to old PHP and Laravel releases.
- Why does Bootstrapper require illuminate/html or laravelcollective/html?
- Bootstrapper is a markup DSL layered over Laravel's Html and Form builders, so it does not generate all markup from scratch. Laravel removed illuminate/html from core in 5.0, so legacy installs rely on laravelcollective/html as a replacement. That transitive dependency is the main integration blocker on modern Laravel. Check that the HTML builder is installed and configured before using Bootstrapper.
- Is Bootstrapper compatible with PHP 8?
- Not without patches. The package predates PHP 8 and can hit removed str_* and array_* helpers, deprecated Illuminate\Support\Str calls, and method signature incompatibilities. A rescue fork is usually needed for PHP 8, even on Laravel 5.x. Test on your exact PHP version before committing.
- Does Bootstrapper support Bootstrap 4 or Bootstrap 5?
- No, it generates Bootstrap 3 markup. Class names and component patterns differ in Bootstrap 4 and 5, so output will not render correctly without translation. Examples include panel to card, label to badge, pull-* to float-*, and hidden-* to d-* utilities. If you need Bootstrap 5, build or use a modern Blade component library.
- What Laravel and Bootstrap versions does Bootstrapper support?
- The clean fit is Laravel 5.x with PHP 7.x, Blade, Bootstrap 3, and laravelcollective/html. It was built for the Laravel 4/5 era, so Laravel 6 and later are outside its supported range. Treat as-is compatibility as a narrow, likely legacy scenario. Anything newer requires a fork or replacement.
- Is patricktalmadge/bootstrapper still maintained?
- It is effectively unmaintained. The API is stable because nothing is changing, not because it is actively curated. Bootstrap 3 is also end-of-life, which pulls accessibility and responsive behavior backward. For production work, plan to own a fork or replace it with maintained code.
- How do I test or mock Bootstrapper's static facades in Laravel?
- Static facades and static accessors are hard to mock, so view-level test coverage tends to be thin. You can swap facade roots or wrap calls in your own service, but that is extra work. The cleaner route is to replace Bootstrapper with Blade components or a thin injectable facade. Then you can test rendered markup directly with Laravel's view assertions.
- Is Bootstrapper safe from XSS?
- There is an XSS surface worth auditing because every generator concatenates attributes. Safety depends on the library consistently routing values through escaped attribute builders. Audit any user-supplied values passed into forms, alerts, navbars, or panels. If you fork it, add tests for attribute escaping and require escaped output by default.
- What are the alternatives to Bootstrapper for Laravel?
- For modern Laravel, use Blade components, Livewire, Inertia, or a maintained Bootstrap component package rather than a server-side static facade. If you must preserve existing views, build a thin 1:1 facade or Blade component set behind the old names, then swap the binding. You can also fork Bootstrapper into a private namespace and pin it, but that carries the highest long-term drag. The recommended path is a shim that maps Bootstrap 3 calls to modern markup.