Repository navigation
WEM moves to AdminLTE 4 / Bootstrap 5.3. The whole interface is rebuilt on the new
template; business features, data and URLs are unchanged.
Before you upgrade
- Upgrade to v2.2 first: v3.0 keeps its requirements (PHP 8.4, Laravel 13).
- One migration, additive: two nullable columns on
users(ui_preset,ui_primary).
Runphp artisan migrate --pretendfirst, as usual. - Rebuild the front end:
npm ci && npm run buildis required. - Customised views: if you changed Blade views, React components or the views in
resources/views/vendor/adminlte, they must be converted to Bootstrap 5. A conversion script
is provided (node tools/bs5-codemod.cjs). PDF layouts (print/custom/*) are not concerned. - Customised
config/adminlte.php: port your changes onto the new file, several keys were
renamed or removed by the package. - Removed folders in
public/vendor(handled bygit pull; delete them yourself if you
deploy by copying files):adminlteandbootstrap(replaced),popper,
overlayScrollbars,chart.js,flag-icon-css,select2-bootstrap4-theme,summernote. - Ask users to reload once with Ctrl+F5.
Full guide: docs/upgrade-3.0.md.
Security
No security advisory in this release.
What's new
AdminLTE 4 / Bootstrap 5.3
jeroennoten/laravel-adminlte4 and AdminLTE 4: CSS grid layout, native dark mode
(data-bs-theme), Bootstrap 5.3 components.- One Bootstrap per page. Screens with React components used to load Bootstrap twice
(AdminLTE's 4.6 and Vite's 5.3, with different colours); the Vite stylesheet of those pages
drops from 246 KB to 27 KB. The AdminLTE stylesheet itself goes from 1.36 MB to 305 KB. - jQuery is no longer needed by the layout nor by WEM's own views: it is loaded once, for
Select2 only. Ten screens that each pulled an extra copy of jQuery from a CDN no longer do. - The whole markup moved to Bootstrap 5 classes and the AdminLTE 4 colour palette; no
Bootstrap 4 compatibility layer is loaded.
Appearance per user
Profile → Appearance: each user picks one of the 17 AdminLTE 4 themes (light, semi-dark,
full dark, coloured and gradient) or keeps the current one, and a primary colour (buttons,
links, checkboxes, active menu item). Light / dark / pro mode is still switched from the top
bar and combines with the chosen theme.
Fixes along the way
- The active menu entry is highlighted again: menu links now carry the language prefix.
- The customer portal mobile menu opens (it was written for Bootstrap 5 but loaded
Bootstrap 4's JavaScript). - The "More ▾" menu of overflowing tab bars works with Bootstrap 5.
- Dark mode: document drop zones, file viewers, the maintenance dashboard, table headers and
the quote / order line panels follow the theme. - The "remember me" checkbox no longer requests a stylesheet that did not exist.
- Error pages (403, 404, 419, 500) use Bootstrap 5 layout utilities; an unclosed element is
fixed.
Removed
- Unused front-end assets: Chart.js 2.7 (CDN), flag-icon-css, the Select2 Bootstrap 4 theme,
Summernote (never loaded), bs-custom-file-input (CDN, never initialised). - The custom CSS-only switch override:
<x-adminlte-input-switch>is now the native
Bootstrap 5 switch of the package.