Installation
To start using this dashboard you will need to import some files in your current project or start from scratch using our template (scroll down in this page to view it).
Prerequisites
If you don't already have an Apache local environment with PHP and MySQL, use one of the following links:
- Windows https://updivision.com/blog/post/beginner-s-guide-to-setting-up-your-local-development-environment-on-windows
- Linux https://howtoubuntu.org/how-to-install-lamp-on-ubuntu
- Mac https://wpshout.com/quick-guides/how-to-install-mamp-on-your-mac/
Also, you will need to install Composer: https://getcomposer.org/doc/00-intro.md
And Laravel: https://laravel.com/docs/9.x/installation
Installation
Via Composer
- Cd to your Laravel app
-
Type in your terminal:
composer require laravel/ui
andphp artisan ui vue --auth
. -
Install this preset via
composer require laravel-frontend-presets/material
. No need to register the service provider. Laravel 9.x & up can auto detect the package. -
Run
php artisan ui material
command to install the Argon preset. This will install all the necessary assets and also the custom auth views, it will also add the auth route inroutes/web.php
(NOTE: If you run this command several times, be sure to clean up the duplicate Auth entries in routes/web.php) -
In your terminal run
composer dump-autoload
-
Add your DB info in
.env
-
Run
php artisan migrate:fresh --seed
to create basic users table
By using the archive
- In your application's root create a presets folder
- Download the archive of the repo and unzip it
- Copy and paste the downloaded folder in presets (created in step 2) and rename it to material
- Open
composer.json
-
Add
"LaravelFrontendPresets\\MaterialPreset\\": "presets/material/src"
toautoload/psr-4
and toautoload-dev/psr-4
. -
Add
LaravelFrontendPresets\MaterialPreset\MaterialPresetServiceProvider::class
toconfig/app.php
. -
Type in your terminal:
composer require laravel/ui
andphp artisan ui vue --auth
. -
In your terminal run
composer dump-autoload
-
Run
php artisan ui material
command to install the Argon preset. This will install all the necessary assets and also the custom auth views, it will also add the auth route inroutes/web.php
(NOTE: If you run this command several times, be sure to clean up the duplicate Auth entries in routes/web.php) -
Add your DB info in
.env
-
Run
php artisan migrate:fresh --seed
to create basic users table
Usage
Register an user or login with data from your database and start testing (make sure to run the migrations and seeders for the credentials to be available).
Besides the dashboard, the auth pages, the billing and tables pages, it has also an edit profile
page. All the necessary files are installed out of the box and all the needed routes are added to
routes/web.php
. Keep in mind that all of the features can be
viewed once you login using the credentials provided or by registering your own user.
Tooling setup
Bootstrap CDN
Skip the download with BootstrapCDN to deliver cached version of Bootstrap’s compiled CSS and JS to your project.
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-wEmeIV1mKuiNpC+IOBjI7aAzPcEZeedi5yW5f2yOq55WWLwNGmvvx4Um1vskeMj0" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-p34f1UUtsS3wqzfto5wAAmdvj+osOnFyQFpp4Ua3gs/ZVWx6oOypYoCJhGGScy+8" crossorigin="anonymous"></script>
CSS
Copy-paste the stylesheet <link>
into
your <head>
before all other
stylesheets to load our CSS.
<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700" rel="stylesheet">
<!-- Icons -->
<link href="../assets/css/nucleo-icons.css" rel="stylesheet" />
<link href="../assets/css/nucleo-svg.css" rel="stylesheet" />
<!-- Font Awesome Icons -->
<script src="https://kit.fontawesome.com/42d5adcbca.js" crossorigin="anonymous"></script>
<!-- CSS Files -->
<link id="pagestyle" href="../assets/css/material-dashboard.css" rel="stylesheet" />
JS
Many of our components require the use of JavaScript to function. Specifically , Popper.js, and our own JavaScript plugins.
Place the following <script>
s near
the end of your pages, right before the closing </body>
tag, to enable them. Popper.js
must come and then our JavaScript plugins.
<!-- Core -->
<script src="../assets/js/core/popper.min.js"></script>
<script src="../assets/js/core/bootstrap.min.js"></script>
<!-- Theme JS -->
<script src="../assets/js/material-dashboard.min.js"></script>
Need to use a certain plugin in your page? You can find out how to integrate them and make them work in the Plugins dedicated page. In this way you will be sure that your website is optimized and uses only the needed resources.
Dark mode
Material Dashboard PRO comes in 2 modes: dark & light. To turn on the dark version you need to
add dark-version
class on the body tag.
<!-- Dark version -->
<body class="dark-version">
...
</body>
Bootstrap starter template
Be sure to have your pages set up with the latest design and development standards. That means using an HTML5 doctype and including a viewport meta tag for proper responsive behaviors. Put it all together and your pages should look like this:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="apple-touch-icon" sizes="76x76" href="../assets/img/apple-icon.png">
<link rel="icon" type="image/png" href="../assets/img/favicon.png">
<title>
Material Dashboard by Creative Tim
</title>
<!-- Fonts and icons -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700" rel="stylesheet" />
<!-- Nucleo Icons -->
<link href="../assets/css/nucleo-icons.css" rel="stylesheet" />
<link href="../assets/css/nucleo-svg.css" rel="stylesheet" />
<!-- Font Awesome Icons -->
<script src="https://kit.fontawesome.com/42d5adcbca.js" crossorigin="anonymous"></script>
<link href="../assets/css/nucleo-svg.css" rel="stylesheet" />
<!-- CSS Files -->
<link id="pagestyle" href="../assets/css/material-dashboard.css" rel="stylesheet" />
</head>
<body class="g-sidenav-show bg-gray-100">
<h1>Hello, world!</h1>
<!-- Core JS Files -->
<script src="../assets/js/core/popper.min.js"></script>
<script src="../assets/js/core/bootstrap.min.js"></script>
<!-- Plugin for the charts, full documentation here: https://www.chartjs.org/ -->
<script src="../assets/js/plugins/chartjs.min.js"></script>
<script src="../assets/js/plugins/Chart.extension.js"></script>
<!-- Control Center for Material Dashboard: parallax effects, scripts for the example pages etc -->
<script src="../assets/js/material-dashboard.min.js"></script>
</body>
</html>
Important globals
Material Dashboard employs a handful of important global styles and settings that you’ll need to be aware of when using it, all of which are almost exclusively geared towards the normalization of cross browser styles. Let’s dive in.
HTML5 doctype
Bootstrap requires the use of the HTML5 doctype. Without it, you’ll see some funky incomplete styling, but including it shouldn’t cause any considerable hiccups.
<!doctype html>
<html lang="en">
...
</html>
Responsive meta tag
Bootstrap is developed mobile first, a strategy in which we optimize code for mobile devices
first and then scale up components as necessary using CSS media queries. To ensure proper rendering
and touch zooming for all devices, add the responsive viewport meta tag to your
<head>
.
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
You can see an example of this in action in the starter template.
Bootstrap components
Many of Bootstrap’s components and utilities are built with @each
loops that iterate over a Sass map.
This is especially helpful for generating variants of a component by our $theme-colors
and creating responsive
variants for each breakpoint. As you customize these Sass maps and recompile, you’ll automatically
see your changes reflected in these loops.
Bootstrap tutorial
Please check our official Youtube channel for more tutorials.