Instalar Bootstrap en Laravel usando Laravel UI

 Instalar Bootstrap en Laravel usando Laravel UI

Este tutorial te guiará paso a paso para instalar y configurar Bootstrap en un proyecto Laravel utilizando el paquete oficial laravel/ui.

Prerrequisitos

  • Tener Composer instalado

  • Tener Node.js y npm instalados

  • Un proyecto Laravel existente

Paso 1: Instalar Laravel UI

Primero, instala el paquete laravel/ui mediante Composer:

bash
composer require laravel/ui

Paso 2: Generar los archivos de autenticación y scaffolding de Bootstrap

Ejecuta el siguiente comando para generar el scaffolding de Bootstrap:

bash
php artisan ui bootstrap

Si también quieres incluir el sistema de autenticación (login, registro, etc.):

bash
php artisan ui bootstrap --auth

Paso 3: Instalar las dependencias de npm

Instala todas las dependencias de JavaScript incluyendo Bootstrap:

bash
npm install

Paso 4: Compilar los assets

Compila los archivos CSS y JavaScript:

bash
npm run dev

Para compilar en modo de desarrollo con watch (recompila automáticamente al hacer cambios):

bash
npm run watch

Para compilar en modo producción (minificado):

bash
npm run prod

Paso 5: Verificar la estructura generada

Después de ejecutar los comandos, se habrán creado/modificado estos archivos:

Archivos CSS/JS principales

  • resources/sass/app.scss - Importa Bootstrap y estilos personalizados

  • resources/js/bootstrap.js - Configuración de JavaScript

  • resources/js/app.js - Punto de entrada principal de JavaScript

Layout por defecto

Se crea/actualiza resources/views/layouts/app.blade.php que incluye:

  • Directivas para cargar CSS y JS compilados

  • Estructura básica con navbar responsive

  • Espacio para el contenido (@yield)

Paso 6: Usar el layout de Bootstrap

En tus vistas, extiende el layout de Bootstrap:

blade
@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">{{ __('Dashboard') }}</div>

                <div class="card-body">
                    @if (session('status'))
                        <div class="alert alert-success" role="alert">
                            {{ session('status') }}
                        </div>
                    @endif

                    {{ __('You are logged in!') }}
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

Paso 7: Personalizar Bootstrap (Opcional)

Modificar variables de Bootstrap

Edita resources/sass/_variables.scss (crea el archivo si no existe) para personalizar colores, fuentes, etc.:

scss
// Variables de Bootstrap personalizadas
$primary: #007bff;
$secondary: #6c757d;
$success: #28a745;
$danger: #dc3545;
$warning: #ffc107;
$info: #17a2b8;

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

Añadir estilos personalizados

En resources/sass/app.scss, añade tus estilos después de importar Bootstrap:

scss
// Variables personalizadas
@import 'variables';

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

// Estilos personalizados
body {
    font-family: 'Nunito', sans-serif;
}

.custom-class {
    background-color: theme-color("primary");
}

Estructura final de archivos importantes

text
resources/
├── js/
│   ├── app.js
│   └── bootstrap.js
├── sass/
│   ├── app.scss
│   └── _variables.scss
└── views/
    └── layouts/
        └── app.blade.php

Comandos útiles para el desarrollo

bash
# Compilar una vez
npm run dev

# Compilar y observar cambios
npm run watch

# Compilar para producción
npm run prod

# Limpiar cache de Laravel (si es necesario)
php artisan optimize:clear

Solución de problemas comunes

Si los estilos no se aplican:

  • Verifica que hayas ejecutado npm run dev

  • Asegúrate de que el layout incluye <link href="{{ asset('css/app.css') }}" rel="stylesheet">

Si hay errores de compilación:

  • Ejecuta npm install nuevamente

  • Verifica que tengas Node.js y npm instalados correctamente

¡Ahora tienes Bootstrap completamente integrado en tu proyecto Laravel!

Comentarios

Entradas más populares de este blog

Cómo usar php artisan ui:auth en Laravel

Te explico cómo configurar el sistema de login en Laravel paso a paso

Tutorial para instalar y usar Laravel Assets