Ecosistema Laravel
Laravel no es solo un framework: es un ecosistema completo de herramientas, servicios y paquetes oficiales que cubren desde el desarrollo local hasta la producción a escala.
El ecosistema de Laravel
Una de las mayores fortalezas de Laravel es su ecosistema. Además del framework core, el equipo de Laravel mantiene decenas de paquetes y servicios que resuelven problemas comunes en el desarrollo web.
Estos productos se dividen en tres categorías: paquetes gratuitos que puedes instalar con Composer, servicios de pago para hosting y administración, y herramientas de desarrollo que mejoran tu productividad.
Starter Kits
Los starter kits te dan un punto de partida con autenticación, diseño y estructura ya configurados.
Laravel Breeze
Breeze es el starter kit minimalista que vimos en la lección 29. Incluye login, registro, recuperación de contraseña y verificación de email con código simple y fácil de entender.
composer require laravel/breeze --dev
php artisan breeze:install
Breeze ofrece tres opciones de frontend: Blade con Alpine.js, Livewire, o Inertia con Vue/React.
Laravel Jetstream
Jetstream es la opción más completa. Además de autenticación, incluye gestión de equipos, autenticación de dos factores, gestión de sesiones y tokens de API.
composer require laravel/jetstream
php artisan jetstream:install livewire
Usa Jetstream cuando necesites funcionalidades empresariales como equipos o 2FA desde el inicio.
Herramientas de frontend
Livewire
Ya vimos Livewire en la lección anterior. Te permite crear interfaces reactivas usando PHP y Blade, sin escribir JavaScript.
Inertia.js
Inertia es el puente entre Laravel y frameworks JavaScript como Vue, React o Svelte. Escribes controladores Laravel normales y renderizas componentes JavaScript en lugar de vistas Blade.
<?php
// En lugar de return view('users.index')
return Inertia::render('Users/Index', [
'users' => User::all(),
]);
Inertia combina lo mejor de ambos mundos: la productividad de Laravel con la experiencia de usuario de una SPA, sin duplicar lógica ni crear una API separada.
Paquetes de autenticación
Sanctum
Laravel Sanctum proporciona autenticación ligera para SPAs, aplicaciones móviles y APIs simples basadas en tokens.
<?php
// Crear un token para el usuario
$token = $user->createToken('mobile-app')->plainTextToken;
// En las rutas API
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
Passport
Laravel Passport implementa OAuth2 completo. Úsalo cuando necesites autenticación entre aplicaciones de terceros, como cuando creas una API pública que otros desarrolladores consumirán.
Socialite
Socialite simplifica la autenticación OAuth con proveedores como Google, Facebook, Twitter, GitHub y muchos más.
<?php
// Redirigir a Google
return Socialite::driver('google')->redirect();
// Callback después de autenticar
$googleUser = Socialite::driver('google')->user();
$user = User::firstOrCreate(
['email' => $googleUser->email],
['name' => $googleUser->name]
);
Pagos y suscripciones
Cashier
Laravel Cashier maneja suscripciones y pagos con Stripe o Paddle. Gestiona planes, períodos de prueba, cupones, facturas y mucho más.
<?php
// Crear una suscripción
$user->newSubscription('default', 'price_monthly')
->trialDays(14)
->create($paymentMethod);
// Verificar si está suscrito
if ($user->subscribed('default')) {
// Tiene acceso premium
}
Búsqueda y utilidades
Scout
Laravel Scout añade búsqueda full-text a tus modelos Eloquent. Soporta drivers como Algolia, Meilisearch, Typesense o incluso la base de datos.
<?php
use Laravel\Scout\Searchable;
class Article extends Model
{
use Searchable;
}
// Buscar artículos
$articles = Article::search('laravel tutorial')->get();
Pennant
Laravel Pennant gestiona feature flags (banderas de características). Activa o desactiva funcionalidades para usuarios específicos sin hacer deploy.
<?php
use Laravel\Pennant\Feature;
if (Feature::active('new-dashboard')) {
// Mostrar nuevo dashboard
}
Pint
Laravel Pint es un formateador de código PHP basado en PHP-CS-Fixer. Viene preinstalado en Laravel y mantiene tu código con un estilo consistente.
# Formatear todo el proyecto
./vendor/bin/pint
# Ver cambios sin aplicarlos
./vendor/bin/pint --test
Rendimiento y tiempo real
Octane
Laravel Octane potencia tu aplicación con servidores de alto rendimiento como Swoole o RoadRunner. Mantiene la aplicación en memoria entre peticiones, reduciendo drásticamente los tiempos de respuesta.
composer require laravel/octane
php artisan octane:install
php artisan octane:start
Reverb
Laravel Reverb es el servidor WebSocket oficial de Laravel. Permite comunicación en tiempo real entre el servidor y los clientes, ideal para chats, notificaciones en vivo o actualizaciones instantáneas.
composer require laravel/reverb
php artisan reverb:install
php artisan reverb:start
Echo
Laravel Echo es la librería JavaScript que escucha eventos WebSocket. Funciona con Reverb, Pusher o cualquier servidor compatible.
Echo.channel('orders')
.listen('OrderShipped', (event) => {
console.log('Pedido enviado:', event.order.id);
});
Debugging y monitoreo
Telescope
Laravel Telescope es el debugger visual de Laravel. Registra peticiones, queries, excepciones, jobs, correos, notificaciones y mucho más. Esencial durante el desarrollo.
composer require laravel/telescope --dev
php artisan telescope:install
php artisan migrate
Accede a Telescope en /telescope para
ver todo lo que ocurre en tu aplicación.
Horizon
Laravel Horizon proporciona un dashboard para monitorear tus colas Redis. Visualiza jobs, tiempos de espera, fallos y métricas en tiempo real.
composer require laravel/horizon
php artisan horizon:install
php artisan horizon
Pulse
Laravel Pulse muestra métricas de rendimiento de tu aplicación en producción: tiempos de respuesta, queries lentas, excepciones frecuentes y uso de recursos.
composer require laravel/pulse
php artisan vendor:publish --provider="Laravel\Pulse\PulseServiceProvider"
php artisan migrate
Nightwatch
Laravel Nightwatch es el servicio de monitoreo en la nube de Laravel. Centraliza logs, métricas, alertas y trazas de errores de todas tus aplicaciones en un dashboard unificado. Es la opción gestionada cuando no quieres configurar tu propia infraestructura de observabilidad.
Testing
Pest
Pest es el framework de testing moderno para PHP, creado por un miembro del equipo Laravel. Ofrece una sintaxis más limpia y expresiva que PHPUnit tradicional.
<?php
test('users can view posts', function () {
$post = Post::factory()->create();
$this->get("/posts/{$post->id}")
->assertOk()
->assertSee($post->title);
});
Dusk
Laravel Dusk realiza tests de navegador automatizados. Simula interacciones reales del usuario como clics, escritura y navegación.
<?php
public function testLogin(): void
{
$this->browse(function (Browser $browser) {
$browser->visit('/login')
->type('email', 'user@example.com')
->type('password', 'secret')
->press('Login')
->assertPathIs('/dashboard');
});
}
Servicios de hosting
Laravel Cloud
Laravel Cloud es la plataforma de hosting totalmente gestionada de Laravel. Deploys automáticos, escalado, bases de datos, colas y más, todo integrado y optimizado para Laravel.
Es la opción más sencilla: conectas tu repositorio y Laravel Cloud se encarga de todo el resto con precios de pago por uso.
Forge
Laravel Forge provisiona y gestiona servidores en proveedores como DigitalOcean, AWS, Linode o Vultr. Configura PHP, Nginx, SSL, bases de datos y deploys automáticos.
Forge te da más control que Cloud: eliges tu proveedor de VPS y Forge configura todo automáticamente. Desde $12/mes puedes gestionar servidores ilimitados.
Vapor
Laravel Vapor despliega aplicaciones Laravel en AWS Lambda (serverless). Sin servidores que gestionar, escala automáticamente y solo pagas por lo que usas.
Vapor es ideal para aplicaciones con tráfico variable o impredecible.
Desarrollo local
Sail
Laravel Sail es el entorno de desarrollo Docker oficial. Ya lo usamos en la lección 2. Proporciona PHP, MySQL, Redis y más servicios con un solo comando.
Herd
Laravel Herd es un entorno de desarrollo nativo para macOS y Windows. Sin Docker, sin configuración: instala y funciona con PHP, Nginx y bases de datos integradas.
Administración
Nova
Laravel Nova genera paneles de administración elegantes y funcionales. Define recursos basados en tus modelos Eloquent y Nova crea automáticamente CRUDs, filtros, métricas y acciones.
<?php
class User extends Resource
{
public static string $model = \App\Models\User::class;
public function fields(Request $request): array
{
return [
ID::make()->sortable(),
Text::make('Name')->sortable(),
Text::make('Email')->sortable(),
];
}
}
Nova es de pago ($99 por proyecto) pero ahorra semanas de desarrollo en paneles admin.
Cuándo usar cada herramienta
| Necesidad | Herramienta |
|---|---|
| Autenticación simple | Breeze + Sanctum |
| Autenticación con equipos/2FA | Jetstream |
| Login con redes sociales | Socialite |
| Interfaces reactivas sin JS | Livewire |
| SPA con Vue/React | Inertia |
| Pagos y suscripciones | Cashier |
| Búsqueda full-text | Scout |
| WebSockets/tiempo real | Reverb + Echo |
| Alto rendimiento | Octane |
| Debug en desarrollo | Telescope |
| Monitoreo en producción | Pulse o Nightwatch |
| Monitor de colas Redis | Horizon |
| Panel de administración | Nova |
| Hosting gestionado | Cloud o Forge |
| Serverless | Vapor |
Ejercicios
Ejercicio 1: Investigar Inertia
Visita la documentación de Inertia.js y responde: ¿qué ventaja tiene sobre crear una API REST separada para tu frontend Vue/React? ¿Cómo comparte datos entre el servidor y el cliente?
Ver solución
Ventajas sobre API REST:
- No necesitas duplicar lógica de validación ni autorización
- No hay que versionar ni documentar una API
- Compartes tipos y estructuras directamente
- Los datos se pasan como props al componente
Compartir datos:
Inertia serializa los datos del controlador como JSON y los pasa al componente JavaScript como props. El componente los recibe igual que recibiría props de su padre.
Ejercicio 2: Planificar herramientas
Imagina que vas a crear una plataforma de cursos online con pagos, búsqueda de cursos y chat en tiempo real. ¿Qué herramientas del ecosistema Laravel usarías para cada funcionalidad?
Ver solución
Plataforma de cursos online:
- Autenticación: Breeze o Jetstream (si necesitas equipos para instructores)
- Pagos y suscripciones: Cashier con Stripe
- Búsqueda de cursos: Scout con Meilisearch o Algolia
- Chat en tiempo real: Reverb + Echo para WebSockets
- Panel admin: Nova para gestionar cursos y usuarios
- Emails transaccionales: Sistema de notificaciones de Laravel
- Desarrollo: Sail + Telescope para debug
- Producción: Forge o Cloud + Pulse para monitoreo
Ejercicio 3: Comparar Telescope y Pulse
Ambas herramientas muestran información sobre tu aplicación. Investiga y explica: ¿cuándo usarías Telescope y cuándo Pulse? ¿Pueden usarse juntas?
Ver solución
Telescope:
- Diseñado para desarrollo local
- Registra todo: cada request, query, job, email...
- Información muy detallada para debugging
- Alto consumo de recursos, no recomendado en producción
Pulse:
- Diseñado para producción
- Muestra métricas agregadas y tendencias
- Bajo impacto en rendimiento
- Identifica patrones: rutas lentas, queries frecuentes
Sí, pueden usarse juntas: Telescope en desarrollo para debug detallado, Pulse en producción para monitoreo general.
Resumen
El ecosistema Laravel es una de sus mayores fortalezas. En lugar de buscar librerías de terceros para cada necesidad, tienes paquetes oficiales mantenidos por el mismo equipo, con documentación excelente e integración perfecta.
- Starter kits: Breeze (simple) y Jetstream (completo)
- Frontend: Livewire (PHP) e Inertia (Vue/React)
- Auth: Sanctum, Passport y Socialite
- Pagos: Cashier para Stripe/Paddle
- Rendimiento: Octane, Reverb, Scout
- Debug: Telescope (dev) y Pulse (prod)
- Hosting: Cloud, Forge y Vapor
- Admin: Nova para paneles profesionales
No necesitas usar todas estas herramientas en cada proyecto. Empieza simple y añade lo que necesites. Lo importante es saber que existen y cuándo pueden ayudarte.
¿Has encontrado un error o tienes una sugerencia para mejorar esta lección?
Escríbenos¿Quieres dominar Laravel?
Aprende a crear aplicaciones completas con Laravel, incluyendo Livewire, APIs, testing y proyectos reales paso a paso.
Ver cursos premium