Compared to the previous version of Laravel where Bootstrap Framework was the default pre-installed frontend option. In the latest version there have been a lot of changes in the Laravel Framework wherein you have to perform certain steps to use Bootstrap as the frontend framework.
Following are the steps to use Bootstrap 4 with latest version of Larvael
Install Laravel / ui package
Run the following command to install Laravel's laravel/ui package
composer require laravel/uiInstall Bootstrap
Once you have installed the laravel / ui package, you can now install the Bootstrap framework by running the following comand
php artisan ui bootstrapIf you are looking to generate auth scaffolding as well, then you should run the following command instead
php artisan ui bootstrap --authInstall and Run NPM
Now that we have generated the Bootstrap scaffolding, next up we need to install and run the NPM so that the bootstrap library is compiled
Run the following command to install NPM
npm installRun the following command to compile the resources
npm run devNow you can use Bootstrap's compiled JS and CSS in your application.
<!doctype html> <html> <head> <!-- Scripts --> <script src="{{ asset('js/app.js') }}" defer></script> <!-- Styles --> <link href="{{ asset('css/app.css') }}" rel="stylesheet"> </head> <body> <h2>This is example Bootstrap page</h2> </body> </html>1. LARAVEL 9 - Introduction
Since version 8 Laravel uses Tailwind CSS as its main CSS framework. Allthough being a first class CSS framework, developing using Tailwind CSS requires a lot of work because you’ll have to develop every reusable component from scratch yourself.
In the past a lot of developers, like myself, used Bootstrap. Laravel has dropped Bootstrap support since version 8. The easiest way to keep using Bootstrap in Laravel 8 is by creating a new Laravel project and then using the two commands :
composer require laravel/ui php artisan ui bootstrap --authThis installs the previous version Bootstrap 4.6.x and adds some scaffolding in case you use the – – auth option.
For those of us who want to keep using Bootstrap, there’s a simple way to create a new Laravel project using the latest Bootstrap 5 framework.
Tip :
If you’re looking for an excellent Local Web Development Server to develop your PHP based applications in a Microsoft Windows environment, please read my posts regarding Laragon.
2. LARAVEL 9 - Build the application manually from scratch
a. Create a new Laravel project
Start by creating a new Laravel project :
composer create-project laravel/laravel your-project-nameThen cd into the newly created project folder and install the Laravel UI package :
composer require laravel/uiThis legacy package is a very simple authentication scaffolding built on the Bootstrap 4 CSS framework.
Generate the Bootstrap scaffolding :
php artisan ui bootstrap --authThis installs Bootstap 4.6 and generates the files needed for authentification.
b. Install Bootstrap 5
Now let’s install Bootstrap 5 :
npm install bootstrap@latest bootstrap-icons @popperjs/core --save-devThis updates Bootstrap 4.6.x to version 5.x and adds the Bootstrap Icons and popper.js
version 2.
Do not remove popper.js version 1!
c. Configure the .env file
Now open your project in your favorite code editor. I use Visual Studio Code.
Check and addapt all settings, especially the database connection and the mail settings.
d. Import Bootstrap Icons
Inside your project, open the file resources\sass\app.scss and add :
@import '~bootstrap-icons/font/bootstrap-icons';
e. Replace the scaffolding files
Inside your project, replace the Bootstrap 4 scaffolding files by the ones you can download here.
So replace the content of your projects /resources/views/ folder by the folder in the downloaded ZIP archive.
f. Finalize the application
Now create the database tables :
php artisan migrateThen let’s finalize the setup :
npm install npm run devTip :
If the npm run dev command throws errors concerning missing dependencies, just run the command a second time.
Normaly all should be OK now and you can start developing your own Laravel 8 Bootstrap 5 application.
2. LARAVEL 9 - Build the application by cloning the GitHub repository
An empty demo Laravel 9 project containing Bootstrap 5 is available on GitHub.
a. Clone the GitHub repository
Inside the root folder of your local web development environment, open a new terminal window.
Enter the command :
Change directory into the newly created project folder.
b. Install Composer Dependencies
Enter the command :
composer installc. Install NPM Dependencies
Enter the commands :
npm install npm run devd. Create your copy of the .env file
Enter the command :
cp .env.example .enve. Generate an App Encryption Key
Enter the command :
php artisan key:generatef. Create an empty database for our application
Use your favorite database management
tool to create an empty database.
Configure a username and password.
g. Configure the .env file
Open the .env file for editing :
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD=********Adjust the DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME and DB_PASSWORD options to match your situation. Also adjust the mail settings:
MAIL_MAILER=smtp MAIL_HOST=mailhog MAIL_PORT=1025 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS=null MAIL_FROM_NAME="${APP_NAME}"Adjust the MAIL_HOST, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD, MAIL_ENCRYPTION and MAIL_FROM_ADDRESS options to match your situation.
h. Migrate the database
Enter the command : :
php artisan migrate
i. Open the application
You now have a working Laravel 8 application using the Bootstrap 5 framework.
Open a browser and go to the url of your application.
Use the Register button to register yourself.
3. LARAVEL 9 - Extend the application with DataTables