rogervila/laravel-legacy-ui
rogervila/laravel-legacy-ui restores Laravel's classic Bootstrap-based UI and auth scaffolding on newer versions, letting you keep familiar login, registration, and password-reset views without rewriting legacy templates. Simple Artisan commands publish the views.
composer require plus ui:auth publish. The real decision is not "build or buy" but "adopt a community fork, adopt first-party Breeze/Fortify, or keep our existing scaffold."Consider it when:
laravel/ui, so the generated code is well-understood, auditable, and easy to hand-edit.Look elsewhere when:
laravel/ui's own remaining functionality at scale — the first-party package is the safer reference even if you fork.Mitigating detail worth knowing: this is a scaffolder, not a runtime dependency. ui:auth publishes controllers, routes, and views into your repository, so at runtime you own and can patch every line. Supply-chain exposure is therefore much lower than the star count suggests — the risk is "no one will fix bugs for you," not "a hostile package executes in production." MIT license plus a first-party lineage means forking and self-maintaining is genuinely cheap if you decide the Bootstrap look is worth keeping.
To executives: This is a small, free, MIT-licensed tool that generates the standard login/registration/password-reset screens for Laravel apps. It saves roughly one to two weeks of engineering and design time per application and keeps our existing Bootstrap interface unchanged, so no retraining, no QA re-baselining, no user disruption. It is not a platform bet — it is a shortcut for a commodity feature.
The honest caveat, stated plainly: it is a community-maintained fork with a small user base and no release since early 2022. We should treat it as a tactical accelerator with a known expiry, not a strategic dependency. Because it generates code into our repo rather than running inside our app, the downside is bounded: if it stops serving us, we keep the code we already have and maintain it ourselves, or migrate to Laravel's first-party Fortify/Breeze — an estimated one to two weeks of work whenever we choose to spend it.
To engineering: adopt it only for Laravel 8/9 apps that are already Bootstrap/Blade. Pin the exact version, vendor-lock the generated output, review the published auth controllers against current OWASP guidance (rate limiting, password rules, session regeneration), and add an ADR recording the adoption plus the migration trigger — for example, "revisit at the Laravel 10 upgrade" or "revisit if 2FA enters the roadmap." Do not extend it, do not patch it upstream expecting turnaround, and do not let it spread to greenfield services.
Recommendation: approve for internal tools and legacy upgrade continuity; block for new customer-facing products, where Breeze or Fortify costs the same and carries active maintenance.
How can I help you explore Laravel packages today?