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

Bootstrap Bundle Laravel Package

digineers/bootstrap-bundle

BraincraftedBootstrapBundle integrates Bootstrap into Symfony2 projects, with support for the official Sass port of Bootstrap and Font Awesome. Install it via Composer, register the bundle, and configure Assetic to compile the LESS files.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

  • This is not a Laravel package. It is a Symfony 2/3 bundle (BraincraftedBootstrapBundle), registered via AppKernel::registerBundles() and bound to Twig extensions, Assetic filters, and Symfony form themes. Laravel has no bundle/kernel extension model; service providers and Blade components are not a translation layer for it.
  • The value it delivers is presentational and conventional: Bootstrap 3 form themes, menu/icon/flash Twig helpers, a collection-of-forms JavaScript helper, and LESS/Sass asset wiring. None of that is reusable in a Laravel app, and all of it is trivially reproduced with bootstrap from npm plus Blade components.
  • Metadata integrity is a blocker before any technical judgment: the supplied repository URL (shinyvision/FOSJsRoutingBundle) is a different Symfony bundle that exposes server routes to client JS, the README is BraincraftedBootstrapBundle, and the vendor name digineers matches neither. We do not currently know which artifact we would be installing.

Integration feasibility

  • Effectively zero for a Laravel target. Adoption would require a Symfony kernel, Twig, Assetic, and jQuery 1.10/1.11 — a stack Laravel does not provide and does not want.
  • If the intent is JS route exposure (matching the linked repo), the modern Laravel equivalent is Ziggy; if the intent is Bootstrap styling, it is npm install bootstrap plus Vite; if the intent is form theming, it is Blade components. Each replacement is hours-to-days of work, not a migration project.
  • The only viable fit is an existing Symfony 2.3–3.0 application already on Assetic and Bootstrap 3, where this bundle is already a dependency. That is maintenance, not integration.

Technical risk

  • High — end of life across the board. Symfony 2.3–3.0 (EOL 2018/2019), Bootstrap 3 (EOL), jQuery 1.10/1.11, Assetic (abandoned), PHP 5.x-era code. Last release v2.2.0 was January 2016.
  • High — abandonment. Zero dependents, no stars recorded, single-maintainer history, no security release channel. Any CVE in the transitive tree is ours to fix.
  • High — provenance. Repo/README/vendor mismatch means we may evaluate one codebase and install another. Supply-chain risk and a due-diligence failure.
  • Medium — hidden coupling. Twig helper and form-theme behavior is called from templates throughout a legacy app, so removal is a template-wide refactor rather than a dependency swap.

Key questions

  1. Is the target stack Laravel or Symfony? If Laravel, this package is out of scope by definition and we should close the evaluation.
  2. Which artifact is actually proposed — bootstrap-bundle or FOSJsRoutingBundle — and what problem is it meant to solve (styling, form rendering, or route exposure)?
  3. Is there a hard constraint on Bootstrap 3 / jQuery 1.11 (design system, legacy browser support), or is this inertia?
  4. Who owns the internal fork if we adopt, and what is the security-patch path for an unmaintained dependency?
  5. Does the platform policy permit new EOL dependencies? Expect a no.

Integration Approach

Stack fit

  • Near-zero for Laravel 10/11/12 + PHP 8.3/8.4. Incompatible on framework model, PHP version, Composer constraints, and front-end toolchain.
  • Positive fit only for a frozen Symfony 2.x/3.0 application on Assetic and Twig with Bootstrap 3 markup already in templates.

Migration path

  • Option A — Reimplement natively (recommended). Laravel + Vite + Bootstrap 5 (or keep the existing CSS framework), Blade components for form controls and @error handling, session flash partials, Font Awesome or Heroicons via npm, and Ziggy if route exposure is the real requirement. Estimated effort: 3–8 engineer-days for a representative surface, with no new dependency risk.
  • Option B — Legacy Symfony containment. If a Symfony 2/3 app is in scope: pin 2.2.*, freeze the version, stop all upgrades to the bundle, and sequence a Symfony LTS upgrade plus replacement with Symfony UX / AssetMapper / Webpack Encore and Bootstrap 5.
  • Option C — Adopt as-is. Not recommended under any scenario reviewed.

Compatibility

  • Composer 2 will either fail resolution against PHP 8.x or pull abandoned transitive packages that collide with modern PSR/Twig/Symfony constraints. Expect a hard block, not a warning.
  • Twig 2/3 removals (e.g. SimpleFunction/SimpleFilter deprecations the bundle only partially addressed) break template rendering on any modernized Symfony app.
  • Bootstrap 3 → 5 is a markup and JS-API breaking change; the bundle's generated HTML will not match a current design system.

Sequencing

  1. Resolve the metadata mismatch: confirm the real package and the underlying requirement with the requester. Do not install anything until this closes.
  2. If Laravel: run a one-sprint spike replacing the single most representative screen (one form, one nav, one flash region) with native Blade + Vite; compare output and effort against the bundle's promise.
  3. Inventory any existing usage in the estate (composer why, template grep for bootstrap_* / icon( / parse_icons).
  4. If legacy Symfony: freeze, document, and fold replacement into the Symfony upgrade workstream rather than a standalone project.
  5. Retire: remove from composer.json, delete dead templates, and record the decision so this evaluation is not repeated.

Operational Impact

Maintenance

  • Unmaintained since January 2016. No releases, no security advisories, no compatibility work. Adopting it converts a solved front-end problem into a permanent internal fork with an owner we must assign.
  • Adds a legacy build step (Assetic/LESS/Sass compilation) that every CI change must keep working, and that no current engineer will want to touch.

Support

  • Community-only and effectively dormant: no SLA, no vendor, no active maintainer. The linked documentation site (bootstrap.braincrafted.com) is a decade old and cannot be relied on for onboarding or incident response.
  • Support burden falls entirely on whoever remembers Symfony 2 bundle conventions.

Scaling

  • Runtime scaling impact is negligible — the bundle is build-time asset compilation plus view helpers. The real scaling concern is developer throughput: Assetic compilation is slow and memory-heavy in CI, and every new feature must be expressed in Bootstrap 3 idioms.
  • Fleet-level scaling is the problem: each additional app that adopts it adds a snowflake legacy stack we cannot patch uniformly.

Failure modes

  • Composer resolution failure or silent downgrade of shared dependencies at install time.
  • Fatal errors on any Symfony 3.4+/4+/5+ or PHP 8 upgrade — a blocker that surfaces during a platform upgrade, at the worst possible time.
  • Twig API removals breaking form rendering and menus with no upstream fix.
  • Assetic filter breakage on modern PHP or Node toolchains.
  • jQuery 1.11 / Bootstrap 3 JS interop conflicts with any modern JS added later.
  • Supply-chain: an abandoned package with unclear provenance and a repo URL pointing elsewhere is a direct dependency-confusion risk.

Ramp-up

  • Steep and non-transferable. New engineers must learn Symfony 2 bundle structure, Assetic pipelines, Twig form theming, and Bootstrap 3 conventions — none of which are current market skills and none of which transfer to the rest of the estate.
  • Realistic ramp-up is 1–2 weeks before a mid-level engineer can safely change a form theme, versus under a day for the Blade/Vite equivalent. The knowledge concentrates in one or two people, creating a key-person dependency for purely cosmetic functionality.
  • Net assessment: the delivered value (CSS classes and markup helpers) is far below the onboarding, patch, and exit cost. Recommend rejecting the package and funding the native reimplementation instead.
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.
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource