AdminLTE is a popular open source WebApp template for admin dashboards and control panels. It is a responsive HTML template that is based on the CSS framework Bootstrap 3. It utilizes all of the Bootstrap components in its design and re-styles many commonly used plugins to create a consistent design that can be used as a user interface for backend applications. AdminLTE is based on a modular design, which allows it to be easily customized and built upon. This documentation will guide you through installing the template and exploring the various components that are bundled with the template.
AdminLTE can be downloaded in two different versions, each appealing to different skill levels and use case.
Compiled and ready to use in production. Download this version if you don't want to customize AdminLTE's LESS files.
DownloadAll files including the compiled CSS. Download this version if you plan on customizing the template. Requires a LESS compiler.
DownloadFile Hierarchy of the Source Code Package
AdminLTE/
├── dist/
│ ├── CSS/
│ ├── JS
│ ├── img
├── build/
│ ├── less/
│ │ ├── AdminLTE's Less files
│ └── Bootstrap-less/ (Only for reference. No modifications have been made)
│ ├── mixins/
│ ├── variables.less
│ ├── mixins.less
└── plugins/
├── All the customized plugins CSS and JS files
AdminLTE depends on two main frameworks. The downloadable package contains both of these libraries, so you don't have to manually download them.
Before you go to see your new awesome theme, here are few tips on how to familiarize yourself with it:
Note: LESS files are better commented than the compiled CSS file.
The layout consists of four major parts:
.wrapper
. A div that wraps the whole site..main-header
. Contains the logo and navbar..sidebar-wrapper
. Contains the user panel and sidebar menu..content-wrapper
. Contains the page header and content.The starter page is a good place to start building your app if you'd like to start from scratch.
A full layout example for a quick start
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>AdminLTE 2 | Dashboard</title> <meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'> <!-- Bootstrap 3.3.2 --> <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css" /> <!-- Font Awesome Icons --> <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet" type="text/css" /> <!-- Ionicons --> <link href="http://code.ionicframework.com/ionicons/2.0.0/css/ionicons.min.css" rel="stylesheet" type="text/css" /> <!-- Theme style --> <link href="dist/css/AdminLTE.min.css" rel="stylesheet" type="text/css" /> <!-- AdminLTE Skins. Choose a skin from the css/skins folder instead of downloading all of them to reduce the load. --> <link href="dist/css/skins/_all-skins.min.css" rel="stylesheet" type="text/css" /> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script> <![endif]--> </head> <body class="skin-blue sidebar-mini"> <!-- Site wrapper --> <div class="wrapper"> <header class="main-header"> <a href="index2.html" class="logo"><b>Admin</b>LTE</a> <!-- Header Navbar: style can be found in header.less --> <nav class="navbar navbar-static-top" role="navigation"> <!-- Sidebar toggle button--> <a href="#" class="sidebar-toggle" data-toggle="offcanvas" role="button"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </a> <div class="navbar-custom-menu"> <ul class="nav navbar-nav"> <!-- Messages: style can be found in dropdown.less--> <li class="dropdown messages-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-envelope-o"></i> <span class="label label-success">4</span> </a> <ul class="dropdown-menu"> <li class="header">You have 4 messages</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li><!-- start message --> <a href="#"> <div class="pull-left"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image"/> </div> <h4> Support Team <small><i class="fa fa-clock-o"></i> 5 mins</small> </h4> <p>Why not buy a new awesome theme?</p> </a> </li><!-- end message --> </ul> </li> <li class="footer"><a href="#">See All Messages</a></li> </ul> </li> <!-- Notifications: style can be found in dropdown.less --> <li class="dropdown notifications-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-bell-o"></i> <span class="label label-warning">10</span> </a> <ul class="dropdown-menu"> <li class="header">You have 10 notifications</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li> <a href="#"> <i class="fa fa-users text-aqua"></i> 5 new members joined today </a> </li> </ul> </li> <li class="footer"><a href="#">View all</a></li> </ul> </li> <!-- Tasks: style can be found in dropdown.less --> <li class="dropdown tasks-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-flag-o"></i> <span class="label label-danger">9</span> </a> <ul class="dropdown-menu"> <li class="header">You have 9 tasks</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li><!-- Task item --> <a href="#"> <h3> Design some buttons <small class="pull-right">20%</small> </h3> <div class="progress xs"> <div class="progress-bar progress-bar-aqua" style="width: 20%" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"> <span class="sr-only">20% Complete</span> </div> </div> </a> </li><!-- end task item --> </ul> </li> <li class="footer"> <a href="#">View all tasks</a> </li> </ul> </li> <!-- User Account: style can be found in dropdown.less --> <li class="dropdown user user-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <img src="dist/img/user2-160x160.jpg" class="user-image" alt="User Image"/> <span class="hidden-xs">Alexander Pierce</span> </a> <ul class="dropdown-menu"> <!-- User image --> <li class="user-header"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image" /> <p> Alexander Pierce - Web Developer <small>Member since Nov. 2012</small> </p> </li> <!-- Menu Body --> <li class="user-body"> <div class="col-xs-4 text-center"> <a href="#">Followers</a> </div> <div class="col-xs-4 text-center"> <a href="#">Sales</a> </div> <div class="col-xs-4 text-center"> <a href="#">Friends</a> </div> </li> <!-- Menu Footer--> <li class="user-footer"> <div class="pull-left"> <a href="#" class="btn btn-default btn-flat">Profile</a> </div> <div class="pull-right"> <a href="#" class="btn btn-default btn-flat">Sign out</a> </div> </li> </ul> </li> </ul> </div> </nav> </header> <!-- =============================================== --> <!-- Left side column. contains the sidebar --> <aside class="main-sidebar"> <!-- sidebar: style can be found in sidebar.less --> <section class="sidebar"> <!-- Sidebar user panel --> <div class="user-panel"> <div class="pull-left image"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image" /> </div> <div class="pull-left info"> <p>Alexander Pierce</p> <a href="#"><i class="fa fa-circle text-success"></i> Online</a> </div> </div> <!-- search form --> <form action="#" method="get" class="sidebar-form"> <div class="input-group"> <input type="text" name="q" class="form-control" placeholder="Search..."/> <span class="input-group-btn"> <button type='submit' name='seach' id='search-btn' class="btn btn-flat"><i class="fa fa-search"></i></button> </span> </div> </form> <!-- /.search form --> <!-- sidebar menu: : style can be found in sidebar.less --> <ul class="sidebar-menu"> <li class="header">MAIN NAVIGATION</li> <li class="treeview"> <a href="#"> <i class="fa fa-dashboard"></i> <span>Dashboard</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="index.html"><i class="fa fa-circle-o"></i> Dashboard v1</a></li> <li><a href="index2.html"><i class="fa fa-circle-o"></i> Dashboard v2</a></li> </ul> </li> <li class="treeview"> <a href="#"> <i class="fa fa-files-o"></i> <span>Layout Options</span> <span class="label label-primary pull-right">4</span> </a> <ul class="treeview-menu"> <li><a href="../layout/top-nav.html"><i class="fa fa-circle-o"></i> Top Navigation</a></li> <li><a href="../layout/boxed.html"><i class="fa fa-circle-o"></i> Boxed</a></li> <li><a href="../layout/fixed.html"><i class="fa fa-circle-o"></i> Fixed</a></li> <li><a href="../layout/collapsed-sidebar.html"><i class="fa fa-circle-o"></i> Collapsed Sidebar</a></li> </ul> </li> <li> <a href="../widgets.html"> <i class="fa fa-th"></i> <span>Widgets</span> <small class="label pull-right bg-green">Hot</small> </a> </li> <li class="treeview"> <a href="#"> <i class="fa fa-pie-chart"></i> <span>Charts</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="../charts/morris.html"><i class="fa fa-circle-o"></i> Morris</a></li> <li><a href="../charts/flot.html"><i class="fa fa-circle-o"></i> Flot</a></li> <li><a href="../charts/inline.html"><i class="fa fa-circle-o"></i> Inline charts</a></li> </ul> </li> <li class="treeview"> <a href="#"> <i class="fa fa-laptop"></i> <span>UI Elements</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="../UI/general.html"><i class="fa fa-circle-o"></i> General</a></li> <li><a href="../UI/icons.html"><i class="fa fa-circle-o"></i> Icons</a></li> <li><a href="../UI/buttons.html"><i class="fa fa-circle-o"></i> Buttons</a></li> <li><a href="../UI/sliders.html"><i class="fa fa-circle-o"></i> Sliders</a></li> <li><a href="../UI/timeline.html"><i class="fa fa-circle-o"></i> Timeline</a></li> <li><a href="../UI/modals.html"><i class="fa fa-circle-o"></i> Modals</a></li> </ul> </li> <li class="treeview"> <a href="#"> <i class="fa fa-edit"></i> <span>Forms</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="../forms/general.html"><i class="fa fa-circle-o"></i> General Elements</a></li> <li><a href="../forms/advanced.html"><i class="fa fa-circle-o"></i> Advanced Elements</a></li> <li><a href="../forms/editors.html"><i class="fa fa-circle-o"></i> Editors</a></li> </ul> </li> <li class="treeview"> <a href="#"> <i class="fa fa-table"></i> <span>Tables</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="../tables/simple.html"><i class="fa fa-circle-o"></i> Simple tables</a></li> <li><a href="../tables/data.html"><i class="fa fa-circle-o"></i> Data tables</a></li> </ul> </li> <li> <a href="../calendar.html"> <i class="fa fa-calendar"></i> <span>Calendar</span> <small class="label pull-right bg-red">3</small> </a> </li> <li> <a href="../mailbox/mailbox.html"> <i class="fa fa-envelope"></i> <span>Mailbox</span> <small class="label pull-right bg-yellow">12</small> </a> </li> <li class="treeview active"> <a href="#"> <i class="fa fa-folder"></i> <span>Examples</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="invoice.html"><i class="fa fa-circle-o"></i> Invoice</a></li> <li><a href="login.html"><i class="fa fa-circle-o"></i> Login</a></li> <li><a href="register.html"><i class="fa fa-circle-o"></i> Register</a></li> <li><a href="lockscreen.html"><i class="fa fa-circle-o"></i> Lockscreen</a></li> <li><a href="404.html"><i class="fa fa-circle-o"></i> 404 Error</a></li> <li><a href="500.html"><i class="fa fa-circle-o"></i> 500 Error</a></li> <li class="active"><a href="blank.html"><i class="fa fa-circle-o"></i> Blank Page</a></li> </ul> </li> <li class="treeview"> <a href="#"> <i class="fa fa-share"></i> <span>Multilevel</span> <i class="fa fa-angle-left pull-right"></i> </a> <ul class="treeview-menu"> <li><a href="#"><i class="fa fa-circle-o"></i> Level One</a></li> <li> <a href="#"><i class="fa fa-circle-o"></i> Level One <i class="fa fa-angle-left pull-right"></i></a> <ul class="treeview-menu"> <li><a href="#"><i class="fa fa-circle-o"></i> Level Two</a></li> <li> <a href="#"><i class="fa fa-circle-o"></i> Level Two <i class="fa fa-angle-left pull-right"></i></a> <ul class="treeview-menu"> <li><a href="#"><i class="fa fa-circle-o"></i> Level Three</a></li> <li><a href="#"><i class="fa fa-circle-o"></i> Level Three</a></li> </ul> </li> </ul> </li> <li><a href="#"><i class="fa fa-circle-o"></i> Level One</a></li> </ul> </li> <li><a href="documentation/index.html"><i class="fa fa-book"></i> Documentation</a></li> <li class="header">LABELS</li> <li><a href="#"><i class="fa fa-circle-o text-danger"></i> Important</a></li> <li><a href="#"><i class="fa fa-circle-o text-warning"></i> Warning</a></li> <li><a href="#"><i class="fa fa-circle-o text-info"></i> Information</a></li> </ul> </section> <!-- /.sidebar --> </aside> <!-- =============================================== --> <!-- Right side column. Contains the navbar and content of the page --> <div class="content-wrapper"> <!-- Content Header (Page header) --> <section class="content-header"> <h1> Blank page <small>it all starts here</small> </h1> <ol class="breadcrumb"> <li><a href="#"><i class="fa fa-dashboard"></i> Home</a></li> <li><a href="#">Examples</a></li> <li class="active">Blank page</li> </ol> </section> <!-- Main content --> <section class="content"> <!-- Default box --> <div class="box"> <div class="box-header with-border"> <h3 class="box-title">Title</h3> <div class="box-tools pull-right"> <button class="btn btn-box-tool" data-widget="collapse" data-toggle="tooltip" title="Collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="remove" data-toggle="tooltip" title="Remove"><i class="fa fa-times"></i></button> </div> </div> <div class="box-body"> Start creating your amazing application! </div><!-- /.box-body --> <div class="box-footer"> Footer </div><!-- /.box-footer--> </div><!-- /.box --> </section><!-- /.content --> </div><!-- /.content-wrapper --> <footer class="main-footer"> <div class="pull-right hidden-xs"> <b>Version</b> 2.0 </div> <strong>Copyright © 2014-2015 <a href="http://almsaeedstudio.com">Almsaeed Studio</a>.</strong> All rights reserved. </footer> </div><!-- ./wrapper --> <!-- jQuery 2.1.3 --> <script src="plugins/jQuery/jQuery-2.1.3.min.js"></script> <!-- Bootstrap 3.3.2 JS --> <script src="bootstrap/js/bootstrap.min.js" type="text/javascript"></script> <!-- SlimScroll --> <script src="plugins/slimScroll/jquery.slimScroll.min.js" type="text/javascript"></script> <!-- FastClick --> <script src='plugins/fastclick/fastclick.min.js'></script> <!-- AdminLTE App --> <script src="dist/js/app.min.js" type="text/javascript"></script> <!-- AdminLTE for demo purposes --> <script src="dist/js/demo.js" type="text/javascript"></script> </body> </html>
AdminLTE 2.0 provides a set of options to apply to your main layout. Each on of these classes can be added to the body tag to get the desired goal.
.fixed
to get a fixed header and sidebar..collapsed-sidebar
to have a collapsed sidebar upon loading..layout-boxed
to get a boxed layout that stretches only to 1250px..layout-top-nav
to remove the sidebar and have your links at the top navbar.Note: you cannot use both layout-boxed and fixed at the same time. Anything else can be mixed together.
Skins can be found in the dist/css/skins folder. Choose and the skin file that you want then add the appropriate class to the body tag to change the template's appearance. Here is the list of available skins:
skin-blue
skin-yellow
skin-purple
skin-green
skin-red
skin-black
AdminLTE uses all of Bootstrap 3 components. It's a good start to review the Bootstrap documentation to get an idea of the various components that this documentation does not cover.
If you go through the example pages and would like to copy a component, right-click on the component and choose "inspect element" to get to the HTML quicker than scanning the HTML page.
The main header contains the logo and navbar. Construction of the navbar differs slightly from Bootstrap because it has components that Bootstrap doesn't provide. The navbar can be constructed in two way. This an example for the normal navbar and next we will provide an example for the top nav layout.
<header class="main-header"> <a href="../../index2.html" class="logo"> <!-- LOGO --> AdminLTE </a> <!-- Header Navbar: style can be found in header.less --> <nav class="navbar navbar-static-top" role="navigation"> <!-- Navbar Right Menu --> <div class="navbar-custom-menu"> <ul class="nav navbar-nav"> <!-- Messages: style can be found in dropdown.less--> <li class="dropdown messages-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-envelope-o"></i> <span class="label label-success">4</span> </a> <ul class="dropdown-menu"> <li class="header">You have 4 messages</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li><!-- start message --> <a href="#"> <div class="pull-left"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image"/> </div> <h4> Sender Name <small><i class="fa fa-clock-o"></i> 5 mins</small> </h4> <p>Message Excerpt</p> </a> </li><!-- end message --> ... </ul> </li> <li class="footer"><a href="#">See All Messages</a></li> </ul> </li> <!-- Notifications: style can be found in dropdown.less --> <li class="dropdown notifications-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-bell-o"></i> <span class="label label-warning">10</span> </a> <ul class="dropdown-menu"> <li class="header">You have 10 notifications</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li> <a href="#"> <i class="ion ion-ios-people info"></i> Notification title </a> </li> ... </ul> </li> <li class="footer"><a href="#">View all</a></li> </ul> </li> <!-- Tasks: style can be found in dropdown.less --> <li class="dropdown tasks-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <i class="fa fa-flag-o"></i> <span class="label label-danger">9</span> </a> <ul class="dropdown-menu"> <li class="header">You have 9 tasks</li> <li> <!-- inner menu: contains the actual data --> <ul class="menu"> <li><!-- Task item --> <a href="#"> <h3> Design some buttons <small class="pull-right">20%</small> </h3> <div class="progress xs"> <div class="progress-bar progress-bar-aqua" style="width: 20%" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"> <span class="sr-only">20% Complete</span> </div> </div> </a> </li><!-- end task item --> ... </ul> </li> <li class="footer"> <a href="#">View all tasks</a> </li> </ul> </li> <!-- User Account: style can be found in dropdown.less --> <li class="dropdown user user-menu"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <img src="dist/img/user2-160x160.jpg" class="user-image" alt="User Image"/> <span class="hidden-xs">Alexander Pierce</span> </a> <ul class="dropdown-menu"> <!-- User image --> <li class="user-header"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image" /> <p> Alexander Pierce - Web Developer <small>Member since Nov. 2012</small> </p> </li> <!-- Menu Body --> <li class="user-body"> <div class="col-xs-4 text-center"> <a href="#">Followers</a> </div> <div class="col-xs-4 text-center"> <a href="#">Sales</a> </div> <div class="col-xs-4 text-center"> <a href="#">Friends</a> </div> </li> <!-- Menu Footer--> <li class="user-footer"> <div class="pull-left"> <a href="#" class="btn btn-default btn-flat">Profile</a> </div> <div class="pull-right"> <a href="#" class="btn btn-default btn-flat">Sign out</a> </div> </li> </ul> </li> </ul> </div> </nav> </header>
To use this main header instead of the regular one, you must add the layout-top-nav
class to the body tag.
<header class="main-header"> <nav class="navbar navbar-static-top"> <div class="container-fluid"> <div class="navbar-header"> <a href="../../index2.html" class="navbar-brand"><b>Admin</b>LTE</a> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse"> <i class="fa fa-bars"></i> </button> </div> <!-- Collect the nav links, forms, and other content for toggling --> <div class="collapse navbar-collapse" id="navbar-collapse"> <ul class="nav navbar-nav"> <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> <li><a href="#">Link</a></li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a> <ul class="dropdown-menu" role="menu"> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li class="divider"></li> <li><a href="#">Separated link</a></li> <li class="divider"></li> <li><a href="#">One more separated link</a></li> </ul> </li> </ul> <form class="navbar-form navbar-left" role="search"> <div class="form-group"> <input type="text" class="form-control" id="navbar-search-input" placeholder="Search"> </div> </form> <ul class="nav navbar-nav navbar-right"> <li><a href="#">Link</a></li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a> <ul class="dropdown-menu" role="menu"> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li class="divider"></li> <li><a href="#">Separated link</a></li> </ul> </li> </ul> </div><!-- /.navbar-collapse --> </div><!-- /.container-fluid --> </nav> </header>
The sidebar used in this page to the left provides an example of what your sidebar should like. Construction of a sidebar:
<div class="main-sidebar"> <!-- Inner sidebar --> <div class="sidebar"> <!-- user panel (Optional) --> <div class="user-panel"> <div class="pull-left image"> <img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image" /> </div> <div class="pull-left info"> <p>User Name</p> <a href="#"><i class="fa fa-circle text-success"></i> Online</a> </div> </div><!-- /.user-panel --> <!-- Search Form (Optional) --> <form action="#" method="get" class="sidebar-form"> <div class="input-group"> <input type="text" name="q" class="form-control" placeholder="Search..."/> <span class="input-group-btn"> <button type='submit' name='search' id='search-btn' class="btn btn-flat"><i class="fa fa-search"></i></button> </span> </div> </form><!-- /.sidebar-form --> <!-- Sidebar Menu --> <ul class="sidebar-menu"> <li class="header">HEADER</li> <!-- Optionally, you can add icons to the links --> <li class="active"><a href="#"><span>Link</span></a><</li> <li><a href="#"><span>Another Link</span></a></li> <li class="treeview"> <a href="#"><span>Multilevel</span> <i class="fa fa-angle-left pull-right"></i></a> <ul class="treeview-menu"> <li><a href="#">Link in level 2</a></li> <li><a href="#">Link in level 2</a></li> </ul> </li> </ul><!-- /.sidebar-menu --> </div><!-- /.sidebar --> </div><!-- /.main-sidebar -->
Info boxes are used to display statistical snippets. There are two types of info boxes.
Markup
<div class="info-box">
<-- Apply any bg-* class to to the icon to color it -->
<span class="info-box-icon bg-red"><i class="fa fa-star-o"></i></span>
<div class="info-box-content">
<span class="info-box-text">Likes</span>
<span class="info-box-number">93,139</span>
</div><!-- /.info-box-content -->
</div><!-- /.info-box -->
Markup
<-- Apply any bg-* class to to the info-box to color it -->
<div class="info-box bg-red">
<span class="info-box-icon"><i class="fa fa-comments-o"></i></span>
<div class="info-box-content">
<span class="info-box-text">Likes</span>
<span class="info-box-number">41,410</span>
<-- The progress section is optional -->
<div class="progress">
<div class="progress-bar" style="width: 70%"></div>
</div>
<span class="progress-description">
70% Increase in 30 Days
</span>
</div><!-- /.info-box-content -->
</div><!-- /.info-box -->
The only thing you need to change to alternate between these style is change the placement of the bg-* class. For the first style apply any bg-* class to the icon itself. For the other style, apply the bg-* class to the info-box div.
The box component is the most widely used component through out this template. You can use it for anything from displaying charts to just blocks of text. It comes in many different styles that we will explore below.
<div class="box"> <div class="box-header with-border"> <h3 class="box-title">Default Box Example</h3> <div class="box-tools pull-right"> <!-- Buttons, labels, and many other things can be placed here! --> <!-- Here is a label for example --> <span class="label label-primary">Label</span> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> <div class="box-footer"> The footer of the box </div><!-- box-footer --> </div><!-- /.box -->
You can change the style of the box by adding any of the contextual classes.
<div class="box box-default">...</div> <div class="box box-primary">...</div> <div class="box box-info">...</div> <div class="box box-warning">...</div> <div class="box box-success">...</div> <div class="box box-danger">...</div>
Solid Boxes are alternative ways to display boxes. They can be created by simply adding the box-solid class to the box component. You may also use contextual classes with you solid boxes.
<div class="box box-solid box-default">...</div> <div class="box box-solid box-primary">...</div> <div class="box box-solid box-info">...</div> <div class="box box-solid box-warning">...</div> <div class="box box-solid box-success">...</div> <div class="box box-solid box-danger">...</div>
Boxes can contain tools to deploy a specific event or provide simple info. The following examples makes use of multiple AdminLTE components within the header of the box.
AdminLTE data-widget attribute provides boxes with the ability to collapse or be removed. The buttons are placed in the box-tools which is placed in the box-header.
<-- This will cause the box to be removed when clicked --> <button class="btn btn-box-tool" data-widget="remove" data-toggle="tooltip" title="Remove"><i class="fa fa-times"></i></button> <-- This will cause the box to collapse when clicked --> <button class="btn btn-box-tool" data-widget="collapse" data-toggle="tooltip" title="Collapse"><i class="fa fa-minus"></i></button>
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Collapsable</h3> <div class="box-tools pull-right"> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Removable</h3> <div class="box-tools pull-right"> <button class="btn btn-box-tool" data-widget="remove"><i class="fa fa-times"></i></button> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Expandable</h3> <div class="box-tools pull-right"> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-plus"></i></button> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
We can also add labels, badges, pagination, tooltips, inputs and many more in the box tools. A few examples:
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Labels</h3> <div class="box-tools pull-right"> <span class="label label-default">8 New Messages</span> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Input</h3> <div class="box-tools pull-right"> <div class="has-feedback"> <input type="text" class="form-control input-sm" placeholder="Search..."/> <span class="glyphicon glyphicon-search form-control-feedback"></span> </div> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
<div class="box box-default"> <div class="box-header with-border"> <h3 class="box-title">Tooltips on buttons</h3> <div class="box-tools pull-right"> <button class="btn btn-box-tool" data-widget="collapse" data-toggle="tooltip" title="Collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="remove" data-toggle="tooltip" title="Remove"><i class="fa fa-times"></i></button> </div><!-- /.box-tools --> </div><!-- /.box-header --> <div class="box-body"> The body of the box </div><!-- /.box-body --> </div><!-- /.box -->
To simulate a loading state, simply place this code before the .box
closing tag.
<div class="overlay">
<i class="fa fa-refresh fa-spin"></i>
</div>
The direct chat widget extends the box component to create a beautiful chat interface. This widget consists of a required messages pane and an optional contacts pane. Examples:
Direct Chat Markup
<-- Construct the box with style you want. Here we are using box-danger -->
<-- Then add the class direct-chat and choose the direct-chat-* contexual class -->
<-- The contextual class should match the box, so we are using direct-chat-danger -->
<div class="box box-danger direct-chat direct-chat-danger">
<div class="box-header with-border">
<h3 class="box-title">Direct Chat</h3>
<div class="box-tools pull-right">
<span data-toggle="tooltip" title="3 New Messages" class='badge bg-red'>3</span>
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
<-- In box-tools add this button if you intend to use the contacts pane -->
<button class="btn btn-box-tool" data-toggle="tooltip" title="Contacts" data-widget="chat-pane-toggle"><i class="fa fa-comments"></i></button>
<button class="btn btn-box-tool" data-widget="remove"><i class="fa fa-times"></i></button>
</div>
</div><!-- /.box-header -->
<div class="box-body">
<!-- Conversations are loaded here -->
<div class="direct-chat-messages">
<!-- Message. Default to the left -->
<div class="direct-chat-msg">
<div class='direct-chat-info clearfix'>
<span class='direct-chat-name pull-left'>Alexander Pierce</span>
<span class='direct-chat-timestamp pull-right'>23 Jan 2:00 pm</span>
</div><!-- /.direct-chat-info -->
<img class="direct-chat-img" src="../dist/img/user1-128x128.jpg" alt="message user image" /><!-- /.direct-chat-img -->
<div class="direct-chat-text">
Is this template really for free? That's unbelievable!
</div><!-- /.direct-chat-text -->
</div><!-- /.direct-chat-msg -->
<!-- Message to the right -->
<div class="direct-chat-msg right">
<div class='direct-chat-info clearfix'>
<span class='direct-chat-name pull-right'>Sarah Bullock</span>
<span class='direct-chat-timestamp pull-left'>23 Jan 2:05 pm</span>
</div><!-- /.direct-chat-info -->
<img class="direct-chat-img" src="../dist/img/user3-128x128.jpg" alt="message user image" /><!-- /.direct-chat-img -->
<div class="direct-chat-text">
You better believe it!
</div><!-- /.direct-chat-text -->
</div><!-- /.direct-chat-msg -->
</div><!--/.direct-chat-messages-->
<!-- Contacts are loaded here -->
<div class="direct-chat-contacts">
<ul class='contacts-list'>
<li>
<a href='#'>
<img class='contacts-list-img' src='../dist/img/user1-128x128.jpg'/>
<div class='contacts-list-info'>
<span class='contacts-list-name'>
Count Dracula
<small class='contacts-list-date pull-right'>2/28/2015</small>
</span>
<span class='contacts-list-msg'>How have you been? I was...</span>
</div><!-- /.contacts-list-info -->
</a>
</li><!-- End Contact Item -->
</ul><!-- /.contatcts-list -->
</div><!-- /.direct-chat-pane -->
</div><!-- /.box-body -->
<div class="box-footer">
<div class="input-group">
<input type="text" name="message" placeholder="Type Message ..." class="form-control"/>
<span class="input-group-btn">
<button type="button" class="btn btn-danger btn-flat">Send</button>
</span>
</div>
</div><!-- /.box-footer-->
</div><!--/.direct-chat -->
Of course you can use direct chat with a solid box by adding the class solid-box
to the box. Here are a couple of examples:
AdminLTE makes use of the following plugins. For documentation, updates or license information, please visit the provided links.
AdminLTE supports the following browsers:
Note: IE9 does not support transitions or animations. The template will function properly but it won't use animations/transitions on IE9.
To upgrade from version 1.x to the lateset version, follow this guide.
Make sure you update all CSS and JS files that are related to AdminLTE. Otherwise, the layout will not function properly. Most important files are AdminLTE.css, skins CSS files, and app.js.
<div class="main-header">
<div class="content-wrapper">
<div class="main-sidebar">
<div class="navbar-custom-menu">
There are major changes to the HTML markup and style to these pages. The best way is to copy the page's code and customize it.
And you should be set to go!
Mailbox got an upgrade to include three different views. The views are inbox, read mail, and compose new email. To use these views, you should use the provided HTML files in the pages/mailbox folder.
Note: the old mailbox layout has been deprecated in favor of the new one and will be removed by the next release.
AdminLTE is an HTML template that can be used for any purpose. However, it is not made to be easily installed on Wordpress. It will require some effort and enough knowledge of the Wordpress script to do so.
Short answer, no. However, there are forks and tutorials around the web that provide info on how to integrate with many different frameworks. There are even versions of AdminLTE that are integrated with jQuery ajax, AngularJS and/or MVC5 ASP .NET.
The best option is to subscribe to our mailing list using the subscription form on Almsaeed Studio. If that's not appealing to you, you may watch the repository on Github or visit Almsaeed Studio every now and then for updates and announcements.
AdminLTE is an open source project that is licensed under the MIT license. This allows you to do pretty much anything you want as long as you include the copyright in "all copies or substantial portions of the Software." Attribution is not required (though very much appreciated).
AdminLTE's premium collection provides a set of non-open source components, plugins and widgets. To use the premium collection, you must buy a license that fits your use case. The following is the set of available licenses:
Single Application License
Multiple Applications License
Extended License
This license must be purchased if you intend to license, sublicense, redistribute, or resell the final product.
For further question about which license you should get, please email us at support@almsaeedstudio.com.