Laravel 12 en 2026: nuevas funcionalidades, Starter Kits y preguntas de entrevista

Novedades de Laravel 12 en 2026: Starter Kits rediseñados con React 19 y WorkOS AuthKit, guía de migración desde Laravel 11 y preguntas esenciales para entrevistas técnicas.

Laravel 12 en 2026: nuevas funcionalidades, Starter Kits y preguntas de entrevista técnica

Las novedades de Laravel 12 se centran en una reestructuración completa de los Starter Kits del framework y un número deliberadamente mínimo de cambios incompatibles. Lanzado el 24 de febrero de 2025, esta versión reemplaza tanto Breeze como Jetstream con un scaffolding moderno y específico para cada framework, construido sobre React 19, Vue 3, Svelte 5 y Livewire 4. La filosofía de este lanzamiento prioriza la estabilidad: la mayoría de las aplicaciones Laravel 11 se actualizan sin modificar una sola línea de código.

Cero cambios incompatibles

Laravel 12 es una versión de mantenimiento. La actualización desde Laravel 11 no requiere cambios en el código de la aplicación en la mayoría de los proyectos. El equipo se enfocó en entregar mejoras de calidad de vida a lo largo del ciclo 11.x en lugar de acumular cambios incompatibles.

Los Starter Kits rediseñados reemplazan a Breeze y Jetstream

El cambio más visible en Laravel 12 es el reemplazo de Breeze y Jetstream por cuatro Starter Kits especializados. A diferencia de los paquetes anteriores que se instalaban en proyectos existentes, estos kits generan un proyecto completamente nuevo con todo el código visible y modificable desde el primer momento.

Cada kit incluye autenticación, registro, restablecimiento de contraseña, verificación de correo electrónico y gestión del perfil de usuario de manera predeterminada.

| Starter Kit | Stack | Librería UI | |------------|-------|-------------| | React | Inertia 2, React 19, TypeScript | shadcn/ui | | Vue | Inertia 2, Vue 3, TypeScript | shadcn-vue | | Svelte | Inertia 2, Svelte 5, TypeScript | shadcn-svelte | | Livewire | Livewire 4, Laravel Volt | Flux UI |

Los cuatro kits incluyen Tailwind CSS 4, soporte para modos oscuro/claro/sistema y múltiples variantes de diseño para las páginas de autenticación (simple, tarjeta y split).

bash
# Instalar un nuevo proyecto Laravel con el starter kit de React
laravel new my-app

# O especificar un starter kit de la comunidad
laravel new my-app --using=vendor/custom-starter-kit

Laravel 12 también introduce la posibilidad de que cualquier persona cree y publique Starter Kits personalizados, registrados mediante el flag --using. Esto abre la puerta a kits exclusivos de Blade, configuraciones solo para API y scaffolding específico para dominios de negocio que la comunidad venía solicitando.

Integración de WorkOS AuthKit para autenticación empresarial

Cada Starter Kit ofrece una variante con WorkOS AuthKit, que agrega funcionalidades de autenticación de nivel empresarial sin necesidad de implementación personalizada:

  • Autenticación social (Google, GitHub, Microsoft y más)
  • Passkeys para inicio de sesión sin contraseña mediante biometría
  • Single Sign-On (SSO) con proveedores SAML y OIDC

El nivel gratuito de WorkOS soporta hasta un millón de usuarios activos mensuales, lo que lo hace viable para proyectos de cualquier escala. La configuración requiere establecer las claves API de WorkOS en el archivo .env y seleccionar la variante WorkOS durante la instalación del kit.

config/services.phpphp
'workos' => [
    'client_id' => env('WORKOS_CLIENT_ID'),
    'api_key' => env('WORKOS_API_KEY'),
    'redirect_url' => env('WORKOS_REDIRECT_URL'),
],

Esta integración elimina la necesidad de paquetes como Socialite para flujos básicos de inicio de sesión social, aunque Socialite sigue disponible para implementaciones OAuth personalizadas.

Actualizaciones de dependencias y requisitos de PHP

Laravel 12 requiere PHP 8.2 a 8.5 y exige Carbon 3 para todas las operaciones de fecha y hora. El soporte para Carbon 2 ha sido eliminado por completo, trayendo un tipado más estricto y mejores garantías de inmutabilidad.

Otras actualizaciones de dependencias incluyen los componentes de Symfony 7, que alinean a Laravel con las últimas versiones estables del ecosistema PHP.

php
// Carbon 3 impone un tipado más estricto
use Carbon\Carbon;

$now = Carbon::now(); // Retorna CarbonImmutable por defecto en modo estricto
$future = $now->addDays(30);

// $now permanece sin cambios — inmutabilidad garantizada
Cronograma de soporte

Laravel 12 recibe correcciones de errores hasta agosto de 2026 y parches de seguridad hasta febrero de 2027. Laravel 13, lanzado el 17 de marzo de 2026, es ahora la última versión mayor — pero la actualización de 12 a 13 no implica cambios incompatibles.

Mejoras notables en las versiones de parche

Mientras que la versión 12.0 inicial se enfocó en los Starter Kits, los parches posteriores hasta la versión 12.12.2 (la última versión 12.x) introdujeron adiciones útiles:

Helpers para arreglos y colecciones

php
use Illuminate\Support\Arr;

// Filtrar por valores en lugar de claves (agregado en 12.46.0)
$filtered = Arr::onlyValues(['admin', 'editor', 'viewer'], ['admin', 'editor']);
// Resultado: ['admin', 'editor']

$excluded = Arr::exceptValues(['admin', 'editor', 'viewer'], ['viewer']);
// Resultado: ['admin', 'editor']

// Verificar si una colección tiene múltiples elementos
$users = collect([/* ... */]);
if ($users->containsManyItems()) {
    // Manejar operación masiva
}

Mejoras en Gates y autorización

php
use Illuminate\Support\Facades\Gate;

// Soporte de UnitEnum en Gate::has() (agregado en 12.45.2)
enum Permission {
    case ViewDashboard;
    case ManageUsers;
}

if (Gate::has(Permission::ViewDashboard)) {
    // La habilidad está definida — más seguro que las verificaciones basadas en strings
}

Correcciones en Schema y Container

Los métodos Schema::getTables(), Schema::getViews() y Schema::getTypes() ahora retornan resultados de todos los esquemas por defecto. El contenedor de inyección de dependencias respeta los valores predeterminados de las propiedades de clase al resolver instancias, y mergeIfMissing() soporta notación de punto anidada para un manejo más limpio de las solicitudes.

¿Listo para aprobar tus entrevistas de Laravel?

Practica con nuestros simuladores interactivos, flashcards y tests técnicos.

Guía de migración: Laravel 11 a Laravel 12

El camino de migración de Laravel 11 a 12 es intencionalmente sencillo. La mayoría de las aplicaciones solo requieren actualizar las versiones de las dependencias.

Paso 1 — Actualizar composer.json:

json
{
    "require": {
        "php": "^8.2",
        "laravel/framework": "^12.0",
        "nesbot/carbon": "^3.0"
    }
}

Paso 2 — Ejecutar la actualización de Composer:

bash
composer update

Paso 3 — Revisar los casos especiales. Las cinco áreas con mayor probabilidad de necesitar ajustes:

  1. Concurrency::run con arreglos asociativos ahora retorna resultados con claves
  2. El disco local apunta por defecto a storage/app/private en lugar de storage/app
  3. Las llamadas a Carbon 2 deben actualizarse a la API de Carbon 3
  4. Los métodos de Schema ahora retornan resultados de múltiples esquemas
  5. Los argumentos nombrados en las llamadas a métodos de Laravel pueden fallar si los nombres de parámetros cambiaron

Para aplicaciones que utilizan Eloquent, middleware o sistemas de colas, la migración generalmente se completa en minutos.

Preguntas esenciales de entrevista sobre Laravel 12 para 2026

Las entrevistas técnicas para posiciones de Laravel en 2026 abarcan tanto los fundamentos del framework como el conocimiento de los cambios recientes. Las preguntas a continuación reflejan lo que los equipos de contratación preguntan activamente, organizadas por nivel de experiencia.

Preguntas de nivel junior

¿Qué cambió en los Starter Kits de Laravel 12 en comparación con Breeze?

Breeze y Jetstream requerían instalación en un proyecto existente y agregaban sus propias dependencias de paquetes. Los Starter Kits de Laravel 12 generan un proyecto completo con todo el código de autenticación directamente en la aplicación — sin lógica oculta en paquetes. Los kits utilizan stacks de frontend modernos (React 19, Vue 3, Svelte 5 o Livewire 4) con TypeScript y componentes shadcn/ui por defecto.

Explicar el Service Container y la Inyección de Dependencias en Laravel.

El service container es la herramienta de Laravel para gestionar las dependencias de clases. Cuando una clase declara parámetros de constructor con tipos definidos, el contenedor resuelve e inyecta automáticamente las instancias apropiadas. En Laravel 12, el contenedor ahora respeta los valores predeterminados de las propiedades durante la resolución — un cambio sutil pero importante.

php
// El contenedor resuelve dependencias automáticamente
class OrderService
{
    public function __construct(
        private PaymentGateway $gateway,  // Resuelto automáticamente
        private int $retryLimit = 3       // Valor predeterminado respetado en Laravel 12
    ) {}
}

Preguntas de nivel intermedio

¿Cómo funciona el middleware en Laravel y qué ha cambiado en versiones recientes?

El middleware filtra las solicitudes HTTP antes de que lleguen al controlador. Laravel 12 corrigió un error de recursión infinita donde un grupo de middleware que se referenciaba a sí mismo causaba un desbordamiento de pila. El middleware puede manejar autenticación, CORS, limitación de tasa y registro de solicitudes. Se crea middleware personalizado con php artisan make:middleware.

Describir la arquitectura del sistema de colas.

Las colas de Laravel difieren las tareas que requieren tiempo (envío de correos, generación de reportes, procesamiento de imágenes) hacia workers en segundo plano. Los jobs se despachan a drivers como Redis, Amazon SQS o la base de datos. Laravel 12 retroportó el soporte de colas en la nube desde la versión 13.x, expandiendo las opciones de despliegue para entornos serverless.

php
// Despachar un job a la cola
use App\Jobs\ProcessInvoice;

ProcessInvoice::dispatch($order)
    ->onQueue('invoices')
    ->delay(now()->addMinutes(5));

Preguntas de nivel senior

Comparar el Repository Pattern con el uso directo de Eloquent en aplicaciones Laravel.

El uso directo de Eloquent en los controladores crea un acoplamiento fuerte entre la capa HTTP y la base de datos. El Repository Pattern introduce una capa de abstracción: una interfaz de repositorio define los métodos de acceso a datos, y una clase concreta los implementa con Eloquent. Esta separación mejora la testabilidad (los repositorios se pueden mockear), soporta el cambio de fuentes de datos e impone límites de responsabilidad única.

El compromiso es la complejidad adicional. Las aplicaciones pequeñas rara vez se benefician de los repositorios. Las aplicaciones grandes con múltiples fuentes de datos, consultas complejas o requisitos estrictos de testing obtienen una claridad arquitectónica significativa.

¿Cómo preparar una aplicación Laravel 12 para la migración a Laravel 13?

Laravel 13 se lanzó sin cambios incompatibles respecto a la versión 12, haciendo la migración directa. Los pasos clave de preparación: asegurar la compatibilidad con PHP 8.3+ (la versión 13 elimina PHP 8.2), auditar el uso de patrones de Carbon 2 obsoletos, y probar los service providers personalizados contra el nuevo sistema de configuración basado en atributos. Los equipos interesados en el SDK de IA de Laravel 13 deberían evaluar sus requerimientos de búsqueda vectorial y RAG con anticipación, ya que el soporte nativo de pgvector solo funciona con PostgreSQL.

Preparación para entrevistas

Los entrevistadores en 2026 preguntan cada vez más sobre la ruta de migración entre versiones de Laravel. Demostrar conocimiento de la cadena de migración 11 → 12 → 13 — y de la filosofía de cero cambios incompatibles — señala experiencia práctica por encima del conocimiento teórico.

Laravel 12 vs Laravel 13: ¿conviene migrar ahora?

| Característica | Laravel 12 | Laravel 13 | |----------------|-----------|------------| | Requisito de PHP | 8.2 - 8.5 | 8.3 - 8.5 | | Starter Kits | React/Vue/Svelte/Livewire | Los mismos + Multi-Tenancy por equipos | | SDK de IA | Beta (laravel/ai) | Estable, listo para producción | | Búsqueda vectorial | No disponible | Soporte nativo pgvector | | Passkeys | Solo vía WorkOS | Nativo en Fortify | | Cambios incompatibles desde 11 | Mínimos | Cero desde 12 | | Corrección de errores hasta | Agosto 2026 | T3 2027 |

Para equipos que no utilizan funcionalidades de IA ni passkeys, Laravel 12 sigue completamente soportado hasta agosto de 2026. La migración a la versión 13 puede realizarse cuando se confirme la compatibilidad con PHP 8.3 en todas las dependencias.

Conclusión

  • Laravel 12 reemplaza Breeze y Jetstream con cuatro Starter Kits modernos construidos sobre React 19, Vue 3, Svelte 5 y Livewire 4 — todo el código reside directamente en la aplicación
  • La integración con WorkOS AuthKit agrega inicio de sesión social, passkeys y SSO sin implementación personalizada — gratuito hasta un millón de usuarios mensuales
  • La migración desde Laravel 11 no requiere cambios de código en la mayoría de las aplicaciones — Carbon 3, Symfony 7 y PHP 8.2+ son los principales cambios de dependencias
  • Las versiones de parche hasta 12.12.2 agregaron Arr::onlyValues(), Arr::exceptValues(), containsManyItems() y soporte de UnitEnum en Gate
  • La preparación para entrevistas en 2026 debe cubrir las diferencias de Starter Kits, los cambios del service container y la ruta de migración de Laravel 12 a 13
  • Laravel 13 (marzo 2026) ofrece un SDK de IA nativo, búsqueda vectorial y passkeys — pero Laravel 12 recibe parches de seguridad hasta febrero de 2027

¡Empieza a practicar!

Pon a prueba tu conocimiento con nuestros simuladores de entrevista y tests técnicos.

Etiquetas

#laravel
#laravel 12
#starter kits
#entrevista técnica
#php

Compartir

Artículos relacionados