Add Bootstrap 5 to Laravel 11 with Vite

1 month ago admin Laravel

In this tutorial, we will see how we can install Bootstrap 5 in Laravel 11 with Vite, the process is simple and easy just follow all the steps carefully.


Install the package

I have already my Laravel 11 app installed we need now to add Bootstrap 5 first of all run these 2 commands :

  1. npm i --save bootstrap @popperjs/core
  2. npm i --save-dev sass

Next, we will create a new folder inside the resources folder and give it sass as a name.

Inside the sass, folder add a new file and give it app.scss as a name.

Put the code below inside the file: 

                                                        
                                                                                                                        
// Fonts
@import url('https://fonts.bunny.net/css?family=Nunito');

// Variables
@import 'variables';

// Bootstrap
@import 'bootstrap/scss/bootstrap';

Create _variables.scss file

Inside the sass, folder add a new file and give it _variables.scss as a name.

Put the code below inside the file: 

                                                            
                                                                                                                                
// Body
$body-bg: #f8fafc;

// Typography
$font-family-sans-serif: 'Nunito', sans-serif;
$font-size-base: 0.9rem;
$line-height-base: 1.6;

Update the file app.js

Next, we will import the file app.scss inside the file app.js so add the following line on the top of the app.js.

                                                            
                                                                                                                                
import '../sass/app.scss';

Add bootstrap path to vite

Next, we will update the file vite.config.js, and add the path to bootstrap.

                                                            
                                                                                                                                
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';

export default defineConfig({
    plugins: [
        laravel({
            input: ['resources/css/app.css', 'resources/js/app.js'],
            refresh: true,
        }),
    ],
    resolve: {
        alias: {
            '~bootstrap': path.resolve(__dirname, 'node_modules/bootstrap'),
        }
    },
});


Update the welcome page

Inside your welcome page update the content and add a link to the app.js file, run your server you will see red text which means that everything is working fine.

Demo

                                                            
                                                                                                                                
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <title>Laravel</title>

        <!-- Fonts -->
        <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap" rel="stylesheet">

        <!-- Styles -->
        <style>
            body {
                font-family: 'Nunito', sans-serif;
            }
        </style>
    </head>
    <body>
        <div class="container">
            <div class="row my-5">
                <div class="col-md-8 mx-auto">
                    <h1 class="text-danger"> Add Bootstrap 5 to laravel 11 with vite</h1>
                </div>
            </div>
        </div>
        @vite('resources/js/app.js')
    </body>
</html>

Related Tuorials

How to Check if a Record Does Not Exist in Laravel

in this lesson, we will see how to check if a record does not exist in laravel, sometimes you need t...


How to Check if a Record Exists in Laravel

in this lesson, we will see how to check if a record exists in laravel, sometimes you need to check...


How to Decrement Multiple Fields in Laravel

In this lesson, we will see how to decrement multiple fields in Laravel, in the old versions of lara...


How to Increment Multiple Fields in Laravel

In this lesson, we will see how to increment multiple fields in Laravel, in the old versions of lara...


How to Use the Same Request Validation Rules for Storing and Updating in Laravel

In this lesson, we will see how to use the same request validation rules for storing and updating in...


How to Go Back to the Previous URL in Laravel Blade

In this lesson, we will see how to go back to the previous URL in Laravel Blade, sometimes we need t...


How to Add Additional Data to The Resource JSON Response in Laravel

In this lesson, we will see how to add additional data to the resource JSON response in Laravel, let...


How to Specify the Attributes to be Returned in the Laravel Find Method

In this lesson, we will see how to specify the attributes to be returned in the Laravel find method,...


How to Get Data Using Where All in Laravel

In this lesson, we will see how to get data using Where All in Laravel, the Where All method is used...


How to Get Data Using Where Any in Laravel

In this lesson, we will see how to get data using Where Any in Laravel, the Where Any method is used...