Este documento contiene el tutorial completo para configurar el entorno de desarrollo y crear un proyecto desde cero, así como los pasos para clonar e instalar un proyecto existente desde GitHub.
- 1. Crear el proyecto desde 0
- 2. Clonar el proyecto desde GitHub
- Paso 1: Clonar el Repositorio e Ingresar a la Carpeta
- Paso 2: Instalar las Dependencias del Proyecto
- Paso 3: Configurar el Archivo de Entorno (.env)
- Paso 4: Generar la Clave de Encriptación (APP_KEY)
- Paso 5: Ejecutar las Migraciones de la Base de Datos
- Paso 6: Compilar Assets e Iniciar el Servidor de Desarrollo
Para ejecutar Laravel 11/12 se requiere PHP 8.2+, Composer, Node.js y un gestor de paquetes de frontend como pnpm.
En sistemas basados en Ubuntu/Debian, ejecuta:
sudo apt update
sudo apt install php php-cli php-common php-readline \
php-mbstring php-xml php-curl php-mysql php-sqlite3 php-zipcurl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composerVerifica la instalación con:
composer -vsudo apt install nodejs npm
sudo npm install -g pnpmVerifica las versiones con:
node -v
pnpm -vcomposer global require laravel/installerPHP carga su configuración desde /etc/php/8.5/cli/php.ini (o la versión correspondiente) y los archivos en /etc/php/8.5/cli/conf.d/. Las extensiones se habilitan automáticamente al instalar los paquetes php-<extension>.
Si trabajas en Windows con XAMPP:
- Localiza tu archivo
php.inienC:\xampp\php\php.ini. - Ábrelo con un editor de texto.
- Busca y descomenta (quítale el punto y coma
;inicial) a las siguientes extensiones:extension=curl extension=fileinfo extension=mbstring extension=openssl extension=pdo_mysql extension=pdo_sqlite extension=sqlite3 extension=zip
- Guarda el archivo y reinicia los servicios de Apache / MySQL en el Panel de Control de XAMPP.
Para crear un nuevo proyecto en tu directorio de trabajo (por ejemplo Backend 1):
cd ~/Backend\ 1/
laravel new app01Nota: Durante el asistente interactivo de
laravel new, puedes seleccionar usar o no un Starter Kit.
Laravel Breeze proporciona una implementación simple de todas las funciones de autenticación de Laravel (Login, Registro, Verificación de Email, Reseteo de Contraseña y Dashboard).
cd app01
composer require laravel/breeze --devphp artisan breeze:install blade --pestPilas disponibles: blade, livewire, react, vue o api.
En versiones recientes de Laravel, el paquete laravel/boost puede interrumpir la ejecución de Composer si no ha sido inicializado (boost:update).
Solución:
- Desinstalar el paquete bloqueante:
composer remove laravel/boost --dev
- Si el script persiste en
composer.json, remueve la línea"@php artisan boost:update --ansi"dentro de"post-update-cmd".
Este error ocurre cuando las dependencias del frontend no se han descargado o breeze:install se interrumpió.
Solución: Reinstala las dependencias con pnpm:
pnpm installCrea las tablas de usuarios y sesiones en SQLite/MySQL:
php artisan migratepnpm install
pnpm devEn una terminal ejecuta el servidor de PHP:
php artisan serveY en otra terminal ejecuta el servidor de Vite:
pnpm devphp artisan serve & pnpm devO usando Composer:
composer run devAbre tu navegador web e ingresa a:
Podrás navegar a las rutas de /register y /login con todo el Dashboard y los estilos de Tailwind CSS funcionando correctamente.
Si clonas este repositorio en una nueva máquina o entorno de desarrollo, sigue estos pasos ordenados para ponerlo en marcha correctamente:
git clone <URL_DEL_REPOSITORIO>
cd resgistro-unsjDebes instalar tanto las dependencias del Backend (PHP con Composer) como las del Frontend (JavaScript con pnpm o npm):
# Instalar dependencias de PHP (Backend)
composer install
# Instalar dependencias de JavaScript/Tailwind (Frontend)
pnpm installNota: Si prefieres no usar
pnpm, puedes utilizarnpm install.
Laravel necesita el archivo .env para gestionar variables de entorno locales como la conexión a la base de datos, URLs y claves del sistema.
-
Copia el archivo de plantilla
.env.examplepara generar tu propio.env:cp .env.example .env
(En Windows CMD puedes ejecutar
copy .env.example .env)💡 ¿Por qué el archivo
.envaparece gris en el editor y no está en Git?
El archivo.envestá incluido en el.gitignoreporque almacena contraseñas, claves privadas y configuraciones específicas de tu entorno local. Por seguridad, nunca debe subirse al repositorio remoto. -
(Opcional) Si la configuración en
.envusa SQLite (predeterminada en.env.example), puedes asegurarte de crear el archivo de base de datos antes de migrar:touch database/database.sqlite
Genera la clave única de encriptación de la aplicación en el archivo .env:
php artisan key:generate💡 ¿Qué hace
key:generatey para qué sirve elAPP_KEY?
Genera una clave aleatoria de 32 caracteres que se escribe automáticamente en la variableAPP_KEYde tu archivo.env. Laravel utiliza esta clave para cifrar las cookies de usuario, tokens de sesión y datos encriptados.
Crea las tablas correspondientes en la base de datos:
php artisan migrate(Si el proyecto incluye datos de prueba iniciales o seeders, puedes ejecutar php artisan migrate --seed).
Para arrancar tanto el servidor Backend de Laravel como el servidor Frontend de Vite/Tailwind:
# Opción rápida: Iniciar ambos servicios simultáneamente con Composer
composer run devO en terminales independientes:
# Terminal 1 - Servidor Laravel PHP
php artisan serve
# Terminal 2 - Servidor de Vite Frontend
pnpm dev👉 Abre tu navegador en http://127.0.0.1:8000.