Antes de iniciar con Laravel debes cumplir con ciertos requerimientos básicos:
Requisitos del Sistema
Laravel 12 requiere:
- PHP 8.2 o superior (recomendado PHP 8.3)
- Composer (gestor de dependencias)
- Extensiones PHP: BCMath, Ctype, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML
Entornos de Desarrollo
Laravel ofrece varias opciones para configurar tu entorno de desarrollo:
Laravel Herd (Recomendado para Windows/Mac)
Laravel Herd es la forma más rápida de comenzar con Laravel. Es una aplicación nativa que incluye PHP, Nginx y todo lo necesario.
- Descarga: https://herd.laravel.com
- Instalación en 1 click
- Cambia entre versiones de PHP fácilmente
- Ideal para principiantes
Laravel Sail (Docker)
Si prefieres Docker o usas Linux, Laravel Sail es perfecto:
- Entorno Docker preconfigurado
- Incluye MySQL, Redis, Mailpit, etc.
- Consistente entre desarrollo y producción
Laragon (Windows)
Si has sido desarrollador de PHP, probablemente ya conozcas XAMPP o WAMP. Laragon es mejor: incluye MySQL, PHP, Memcached, Redis, Apache y Nginx en una interfaz sencilla.
Valet (Mac/Linux)
Para usuarios de Mac/Linux que quieren un entorno minimalista sin Docker.
Composer
Para instalar Laravel necesitamos de composer. Composer es una herramienta de gestión de dependencias. Usar Composer es muy sencillo. Para instalar composer debes seguir este enlace y cumplir con los requerimientos.
Creando un proyecto Laravel
Puedes instalar Laravel mediante el instalador de Laravel o mediante el comando create-project de Composer.
Abre tu terminal, muévete al directorio de tu proyecto ejecutando cd directorio_del_proyecto.
Puedes ubicar tu proyecto de Laravel donde desees.
Para realizar la instalación con el comando create-project debes hacer lo siguiente:
composer create-project laravel/laravel nombre_proyecto
O usando el instalador de Laravel (más rápido):
laravel new nombre_proyecto
Starter Kits (Nuevo en Laravel 12)
Laravel 12 renovó los Starter Kits con tres opciones standalone modernas que incluyen todo desde el primer momento:
React Starter Kit (Recomendado para SPAs):
laravel new mi-proyecto
// Selecciona "React" cuando te pregunte
Incluye:
- React 19 + TypeScript
- Inertia 2 (SSR listo)
- shadcn/ui components
- Tailwind CSS
- Autenticación completa
Vue Starter Kit (Para fans de Vue):
Incluye:
- Vue 3 Composition API + TypeScript
- Inertia 2
- shadcn-vue components
- Tailwind CSS
- Autenticación completa
Livewire Starter Kit (Full-stack sin JavaScript):
Incluye:
- Livewire + Laravel Volt
- Flux UI component library
- Tailwind CSS
- Ideal si prefieres quedarte en PHP
Cambio importante: Breeze y Jetstream fueron removidos del instalador
laravel newen Laravel 12. Ahora los starter kits vienen integrados directamente. Si aún quieres usar Breeze, puedes instalarlo manualmente concomposer require laravel/breeze --dev.
Para esta serie usaremos el Livewire Starter Kit porque nos permite enfocarnos en Laravel sin necesitar JavaScript avanzado.
Comando Artisan
El comando artisan proporciona muchos comandos útiles que pueden acelerar tu ritmo de desarrollo. Puedes ver todos los comandos artisan disponibles ejecutando php artisan list o simplemente php artisan.
Configuración básica
Todos los archivos de configuración de Laravel para este proyecto se encuentran dentro del directorio /config, pero por ahora no nos centraremos en eso. La configuración básica de una aplicación Laravel gira en torno al archivo .env.
El archivo .env contiene variables que pueden cambiar cuando movemos nuestra aplicación a otro entorno. Por ejemplo, cuando trasladamos nuestra aplicación de desarrollo al servidor de producción, nuestras credenciales de la base de datos seguramente cambiarán al igual que las de algunos otros servicios externos que estemos usando en nuestra aplicación.
Por eso se recomienda encarecidamente no incluir el archivo
.enven un repositorio de git (hablaremos de git más adelante).
Repasemos algunas de las variables .env vitales, cuándo y cómo usarlas.
APP_NAME: Este es el nombre de tu aplicación. Laravel utiliza este nombre de forma predeterminada, especialmente al enviar correos electrónicos.APP_ENV: Se utiliza en Laravel para detectar dónde se está ejecutando tu aplicación. Cuando lo configuras enproduction, Laravel te mostrará una advertencia cada vez que realices una acción sensible, cómo ejecutar el comandoartisan migrate.APP_KEY: La clave de la aplicación se utiliza para asegurar la sesión y los datos encriptados. Por defecto, tu aplicación Laravel mostrará un error 500 si la clave no está configurada.APP_DEBUG: Esta variable se establece en true de forma predeterminada y te permite ver la traza de errores. Se recomienda encarecidamente para entornos locales o de desarrollo. Si estableces esta variable en false, se activará la página de error predeterminada de Laravel y se ocultará la traza de errores. Esto es muy importante cuando estás en un entorno de producción.APP_URL: Siempre establece esto como el nombre de dominio de tu aplicación. Laravel y algunos paquetes externos utilizan esta variable.
Ejecución del proyecto
Al ejecutar el comando php artisan serve en la consola obtendremos un resultado como este:
php artisan serve
INFO Server running on [http://127.0.0.1:8000].
Press Ctrl+C to stop the server
En el próximo artículo aprenderemos sobre Rutas en Laravel, el sistema que conecta URLs con tu código.
¿Necesitas ayuda profesional con Laravel? Ofrezco servicios de desarrollo Laravel para aplicaciones enterprise, APIs RESTful y arquitectura escalable.
Preguntas Frecuentes
¿Qué versión de PHP necesito para Laravel 12?
Laravel 12 requiere PHP 8.2 o superior, aunque se recomienda PHP 8.3 para mejor rendimiento y características más recientes. Además necesitas las extensiones PHP: BCMath, Ctype, JSON, Mbstring, OpenSSL, PDO, Tokenizer, y XML.
¿Cuál es la forma más rápida de instalar Laravel?
Laravel Herd es la forma más rápida de comenzar con Laravel. Es una aplicación nativa para Windows/Mac que incluye PHP, Nginx y todo lo necesario con instalación en 1 click. Descárgalo desde herd.laravel.com.
¿Debo incluir el archivo .env en git?
No. Se recomienda encarecidamente NO incluir el archivo .env en un repositorio de git porque contiene credenciales sensibles de base de datos y servicios externos que cambiarán entre entornos (desarrollo, staging, producción).
¿Qué diferencia hay entre Herd y Sail?
Herd es una aplicación nativa (sin Docker) perfecta para principiantes - instalación en 1 click y muy rápido. Sail usa Docker, es ideal si necesitas un entorno consistente entre desarrollo y producción, o si usas Linux (Herd solo funciona en Windows/Mac).
¿Qué son los Starter Kits en Laravel 12?
Laravel 12 rediseñó los Starter Kits con tres opciones standalone modernas: React (con shadcn/ui), Vue (con shadcn-vue), y Livewire (con Flux UI). Vienen integrados directamente en el instalador laravel new — ya no necesitas instalar Breeze o Jetstream manualmente.
Video de la lección
Ver video tutorial: Aprende Laravel - Instalación y Setup
Playlist completa en YouTube: Aprende Laravel @ YouTube
