FAQ
How can we help?
Quick answers to the 23 questions we get asked most often. Use the search to jump to anything, or click a topic below.
No questions match your search. Try a different keyword or open a Discussion.
Getting started
5 questions
What is AdminLTE, exactly?
Do I need a build step to use it?
<link> tags and four
<script> tags into your HTML and you're done. The npm-based
workflow is there if you want to customise SCSS variables or tree-shake the
JavaScript.
Which Bootstrap version does v4 require?
package.json pins 5.3.8 — older 5.3
minors should work but aren't tested. Bootstrap 5.0 / 5.1 / 5.2 will not work
(the color-mode and data-bs-theme system landed in 5.3).
Can I use AdminLTE 4 with jQuery?
$.fn.xxx() plugin
shims.The v3
plugins/ folder is gone too. Every
widget it bundled has a vanilla-JS successor — see the
plugin replacement table
for the full mapping (Select2 → Tom Select, DataTables → Tabulator, Summernote
→ Quill, and so on).
Does AdminLTE 4 support Select2?
forms/advanced.html demos all of it, including a paginated
remote-data field with request cancellation, and there's a
line-by-line API mapping if
you're porting existing code.Select2 itself is still maintained (4.1.0 shipped in 2026), but it is still a jQuery plugin — its UMD wrapper hard-requires jQuery and there is no jQuery-free build. Bundling it would put jQuery back into a framework whose entire v4 premise is not needing it, and none of the official Vue/React/Django/Laravel ports could consume it.
If you're locked into Select2 anyway, AdminLTE ships an optional styling-only compatibility sheet — see Select2 compatibility theme. You bring the plugin; it makes Select2 match Bootstrap 5.3, dark mode and modals included. No jQuery is added to AdminLTE.
Framework integrations
3 questions
Can AdminLTE be used with WordPress?
wp_head(),
wp_footer(), and WordPress's loops. AdminLTE doesn't ship a
WordPress-specific build; the work of porting nav-walker classes and
authentication forms is yours.
Laravel? Symfony? Yii? Django? Rails?
React, Vue, Svelte, Angular?
Workable but less natural. AdminLTE's JavaScript plugins use DOM lifecycle
hooks (DOMContentLoaded, MutationObserver patterns) which fight
with framework reconciliation. If you're using a SPA framework, consider:
- Using AdminLTE only for CSS — keep the visual style, but write your own React/Vue components for the interactive parts.
- Or pick a component library built for your framework (PrimeReact, Vuetify, etc.).
We don't recommend wrapping AdminLTE's jQuery-era plugins in SPA framework components — it's a maintenance burden that outweighs the visual win.
Customization
3 questions
How do I change the primary colour?
Override --bs-primary (and its RGB counterpart) on
:root:
:root {
--bs-primary: #6610f2;
--bs-primary-rgb: 102, 16, 242;
}
For deeper control (sidebar width, breakpoints, spacing scale), see Customization & Theming.
How do I add a date picker / multi-select / rich text editor?
Can I use FontAwesome instead of Bootstrap Icons?
<i class="bi bi-x"> with
<i class="fas fa-x"> throughout.
Versions and updates
3 questions
How do I get notified of new versions?
https://github.com/ColorlibHQ/AdminLTE/releases.atom.
Where's the AdminLTE 3 documentation?
How do I upgrade from v3 to v4?
.wrapper →
.app-wrapper), data-toggle →
data-bs-toggle, dark mode uses data-bs-theme instead
of .dark-mode, and jQuery isn't required anymore.
Licensing
3 questions
Is AdminLTE free for commercial use?
adminlte.css / adminlte.js). You don't
need to display attribution in the UI.
Do I need to credit AdminLTE in my app?
Can I sell a product made with AdminLTE?
Troubleshooting
6 questions
The sidebar doesn't collapse when I click the hamburger menu.
adminlte.js — make sure the script tag is on the page and
after the markup it operates on. Also verify your hamburger button
has data-lte-toggle="sidebar" (not
data-widget="pushmenu", which is the v3 attribute).
Dark mode doesn't persist after refresh.
localStorage under the key lte-theme. If you're
using a different toggle implementation, make sure it both sets
document.documentElement.setAttribute('data-bs-theme', ...) and
writes to localStorage on change.
My own theming keeps getting overwritten by AdminLTE.
<html data-lte-color-mode="off">. ColorMode then never
writes data-bs-theme — not on load, not on a toggle click, not
when the OS preference changes — so your own switcher (or a custom Bootstrap
theme name) stays in control. If you only need a server-rendered default
instead, render data-bs-theme on <html> and it
is respected as long as the visitor hasn't picked a theme themselves. See
Color Mode.
Bootstrap modal closes when I press Escape, but the AdminLTE sidebar closes too.
My custom SCSS doesn't override AdminLTE's defaults.
@import of AdminLTE's
SCSS. AdminLTE uses !default on its variables, which means the
first declaration wins. See
Customization & Theming
for the import order.
npm install fails with peer dependency errors.
overrides block in package.json to
keep peers happy — make sure you're on npm 8.3+ which respects them. If you're
on an older npm, install with --legacy-peer-deps.
Still need help?
Open a discussion on GitHub or browse the documentation for more in-depth answers.