- How do I install okipa/laravel-bootstrap-components in a Laravel app?
- Run composer require okipa/laravel-bootstrap-components. The service provider is auto-discovered, so no manual registration in config/app.php is required. Publish the config and Blade views with php artisan vendor:publish, selecting the package provider or tag. Because the repository was archived in September 2021, prove the install on your target Laravel version before committing.
- Does laravel-bootstrap-components support Laravel 10, Laravel 11, and PHP 8.1+?
- There is no official confirmation. The last release was 2021-09-01 and the repository is archived, so it predates Laravel 9, 10, 11 and PHP 8.1+. Blade component compilation changed materially after Laravel 7 and 8, including @props, anonymous components, and slot handling, so support must be proven rather than assumed. Run composer why-not okipa/laravel-bootstrap-components against your Laravel version and render one real form before deciding.
- Which Bootstrap version does this package target?
- It emits Bootstrap 4-era markup, including classes such as form-group and custom-control. Those were removed or renamed in Bootstrap 5, so form layouts, spacing, and validation styling will break visually and semantically. Adopt it only if you are pinned to Bootstrap 4 for the next 12 months. Otherwise treat it as a reference implementation.
- How do I customize the HTML output of the form components?
- The package ships publishable config and views, so you can copy the Blade templates into your app and edit them directly. Run php artisan vendor:publish, then override the views under resources/views/vendor or copy them into resources/views/components. Since upstream is archived, vendoring outright is often safer than expecting future releases. Keep the MIT header and a provenance note if you copy the code.
- Can I use it with Livewire, Inertia, or Tailwind CSS?
- Not practically. It is a Blade plus Bootstrap 4 view-layer utility, so Inertia and SPA front ends never render these Blade components, and Tailwind apps would inherit conflicting class names. It works mechanically inside Livewire views but adds little, since the components emit static Bootstrap markup without Livewire bindings. Use a Livewire-native or Tailwind-based UI kit instead.
- Does it handle old input and validation errors correctly?
- It is designed to repopulate old() input and reflect $errors state, which is the main reason developers reach for it. However, it is an unmaintained renderer interpolating user-supplied values, and form components sit right next to output escaping. Read the published views and confirm escaping before using it on auth, payment, or PII forms. Push one form through a validation failure and old-input repopulation during your spike.
- Is okipa/laravel-bootstrap-components safe to use in production?
- Mechanically yes, because it is a shallow, leaf-node dependency with no persistence, queues, middleware, or runtime services, so removal is cheap. The real risk is maintenance: archived since 2021, roughly 19 stars, a single maintainer, and no CVE response path. If you adopt it, name an internal owner, document a fork point, and record the archived status as a deliberate exception in your dependency policy.
- What components and directives does the package provide?
- It provides reusable Blade components and directives for common Bootstrap elements, including buttons, alerts, form inputs, cards, and modals. You consume them either as Blade components or through Blade::directive shortcuts, depending on the version. Check the published views to see whether it uses class components, anonymous components, or directives, because that determines upgrade risk and how portable the markup is. If you only need five to eight components, the dependency likely costs more than the code.
- What are the alternatives to laravel-bootstrap-components?
- Copy the published Blade views into resources/views/components and register them as anonymous components. Wrap each one behind your own x-form.* namespace so the implementation stays swappable. Laravel's built-in Blade components plus Bootstrap 4 markup cover most of what the package does, and other Blade UI kits tend to target Tailwind rather than Bootstrap 4. The developer experience comes from the templates, not from the dependency itself.
- How should I migrate an existing app onto or off this package?
- Inventory your current form patterns first, then spike one real form on the target Laravel version. Publish the views, diff the emitted markup against your templates for Bootstrap and PHP drift, and test validation failure, old-input repopulation, file inputs, and multi-select or optgroup cases. Then decide whether to wrap the components in an internal namespace, vendor the views, or rewrite. Migrate form by form behind visual regression checks rather than switching everything at once.