Please enable JavaScript.
Coggle requires JavaScript to display documents.
Laravel - Coggle Diagram
Laravel
Fundamentos y Estructura del proyecto :
¿Qué es Laravel?
Framework PHP de código abierto.
Basado en el patrón MVC (Modelo-Vista-Controlador).
Diseñado para el desarrollo de aplicaciones web robustas y seguras.
¿Para qué se usa Laravel?
Desarrollo de aplicaciones web modernas.
Creación de APIs RESTful.
Gestión de autenticación y autorización.
Integración con bases de datos (ORM: Eloquent).
Automatización de tareas (migraciones, seeding, testing, etc.).
Principales características de Laravel
🔹 Routing avanzado
🔹 ORM Eloquent
🔹 Blade (motor de plantillas)
🔹 Autenticación y autorización integrada
🔹 Migraciones y seeders
🔹 Artisan (interfaz de línea de comandos)
🔹 Testing automatizado
🔹 Middleware
🔹 Colas y Jobs
🔹 Sistema de paquetes (Laravel Mix, Composer)
Ventajas frente a otros frameworks PHP
✅ Sintaxis clara y elegante
✅ Amplia comunidad y documentación
✅ Integración fácil con servicios externos
✅ Desarrollo rápido con Artisan
✅ Mantenimiento a largo plazo (Laravel LTS)
✅ Flexibilidad y escalabilidad
✅ Gran ecosistema (Laravel Nova, Laravel Breeze, Jetstream, etc.)
Instalación y entorno
¿Cómo se instala Laravel?
PHP (>= 8.1 recomendado)
Composer (gestor de dependencias de PHP
¿Qué herramientas necesito para trabajar con Laravel?
¿Qué herramientas necesito para trabajar con Laravel?
PHP (8.1 o superior)
Composer (gestor de paquetes PHP)
Servidor web (Apache, Nginx o el servidor embebido de Laravel con php artisan serve)
Base de datos (MySQL, PostgreSQL, SQLite, etc.)
Node.js + NPM (para compilar assets frontend con Laravel Mix o Vite)
Editor de código (VS Code recomendado)
Opcional: Laravel Valet, Homestead o Docker para entornos locales avanzados
¿Qué comando se usa para crear un nuevo proyecto Laravel?
Con Composer directamente:
composer create-project laravel/laravel nombre-del-proyecto
Con el instalador de Laravel (si lo instalaste globalmente):
laravel new nombre-del-proyecto
¿Cómo se configura el archivo .env?
Es el archivo de configuración de entorno de la aplicación.
Permite definir variables como:
Conexión a la base de datos
Nombre de la app, entorno (APP_ENV), clave (APP_KEY)
Puerto, host, correo electrónico, servicios externos
Estructura del proyecto
¿Qué estructura tiene un proyecto de Laravel?
¿Qué estructura tiene un proyecto de Laravel?
app/
bootstrap/
config/
database/
public/
resources/
routes/
storage/
tests/
vendor/
.env
composer.json
¿Qué función cumple cada carpeta?
app/
Contiene la lógica del negocio de la aplicación
routes/
Define las rutas de la aplicación (web, API, consola)
resources/
Contiene archivos frontend y de presentación
public/
Carpeta accesible públicamente desde el navegador
database/
Gestiona la base de datos
config/
Archivos de configuración de la app
bootstrap/
Configura y arranca la aplicación.
storage/
Almacena logs, archivos temporales, cachés, etc.
tests/
Contiene las pruebas automatizadas.
vendor/
Contiene todas las dependencias instaladas por Composer
¿Dónde se definen las rutas?
¿Dónde se definen las rutas?
web.php → rutas para la interfaz web (HTML, vistas Blade).
api.php → rutas para la API REST (respuestas JSON).
console.php → comandos de consola personalizados.
channels.php → configuración para broadcasting (eventos en tiempo real)
¿Dónde se encuentran los controladores, modelos y vistas?
Controladores:
➤ Se ubican en app/Http/Controllers/.
Modelos:
➤ Se ubican en app/Models/
Vistas:
➤ Se ubican en resources/views/ y usan el motor de plantillas Blade (.blade.php)