# Laravel 12 em 2026: novos recursos, Starter Kits e perguntas para entrevistas > Novidades do Laravel 12 em 2026: Starter Kits redesenhados com React 19 e WorkOS AuthKit, guia de migração do Laravel 11 e perguntas essenciais para entrevistas técnicas. - Published: 2026-05-23 - Updated: 2026-05-23 - Author: SharpSkill - Tags: laravel, laravel 12, starter kits, entrevista técnica, php - Reading time: 10 min --- Os novos recursos do Laravel 12 giram em torno de uma reformulação completa dos Starter Kits do framework e um número deliberadamente mínimo de mudanças incompatíveis. Lançado em 24 de fevereiro de 2025, esta versão substitui tanto o Breeze quanto o Jetstream por scaffolding moderno e específico para cada framework, construído sobre React 19, Vue 3, Svelte 5 e Livewire 4. A filosofia deste lançamento prioriza a estabilidade: a maioria das aplicações Laravel 11 atualiza sem qualquer alteração no código. > **Zero mudanças incompatíveis** > > O Laravel 12 é uma versão de manutenção. A atualização do Laravel 11 não exige alterações no código da aplicação na maioria dos projetos. A equipe optou por entregar melhorias de qualidade de vida ao longo do ciclo 11.x em vez de acumular mudanças incompatíveis. ## Starter Kits redesenhados substituem Breeze e Jetstream A mudança mais visível no Laravel 12 é a substituição do [Breeze](https://laravel.com/docs/12.x/starter-kits) e do Jetstream por quatro Starter Kits específicos. Diferentemente dos pacotes anteriores que eram instalados em projetos existentes, estes kits geram um projeto completamente novo com todo o código visível e modificável desde o início. Cada kit inclui autenticação, registro, redefinição de senha, verificação de e-mail e gerenciamento de perfil de usuário prontos para uso. | Starter Kit | Stack | Biblioteca 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 | Todos os quatro kits incluem Tailwind CSS 4, suporte para modos escuro/claro/sistema e múltiplas variantes de layout para as páginas de autenticação (simples, cartão e split). ```bash # Instalar um novo projeto Laravel com o starter kit React laravel new my-app # Ou especificar um starter kit da comunidade laravel new my-app --using=vendor/custom-starter-kit ``` O Laravel 12 também introduz a possibilidade de qualquer pessoa criar e publicar Starter Kits personalizados, registrados através da flag `--using`. Isso abre caminho para kits exclusivamente Blade, configurações apenas para API e scaffolding específico para domínios de negócio que a comunidade vinha solicitando. ## Integração WorkOS AuthKit para autenticação corporativa Cada Starter Kit oferece uma variante com WorkOS AuthKit, adicionando recursos de autenticação de nível empresarial sem implementação personalizada: - **Autenticação social** (Google, GitHub, Microsoft e outros) - **Passkeys** para login sem senha via biometria - **Single Sign-On (SSO)** com provedores SAML e OIDC O plano gratuito do WorkOS suporta até um milhão de usuários ativos mensais, tornando-o viável para projetos de qualquer escala. A configuração requer definir as chaves da API WorkOS no arquivo `.env` e selecionar a variante WorkOS durante a instalação do kit. ```php // config/services.php 'workos' => [ 'client_id' => env('WORKOS_CLIENT_ID'), 'api_key' => env('WORKOS_API_KEY'), 'redirect_url' => env('WORKOS_REDIRECT_URL'), ], ``` Essa integração elimina a necessidade de pacotes como o Socialite para fluxos básicos de login social, embora o [Socialite](https://laravel.com/docs/12.x/socialite) continue disponível para implementações OAuth personalizadas. ## Atualizações de dependências e requisitos de PHP O Laravel 12 exige PHP 8.2 a 8.5 e obriga o uso do Carbon 3 para todas as operações de data e hora. O suporte ao Carbon 2 foi completamente removido, trazendo tipagem mais rigorosa e melhores garantias de imutabilidade. Outras atualizações de dependências incluem os componentes do Symfony 7, alinhando o Laravel com as últimas versões estáveis do ecossistema PHP. ```php // Carbon 3 impõe tipagem mais rigorosa use Carbon\Carbon; $now = Carbon::now(); // Retorna CarbonImmutable por padrão no modo estrito $future = $now->addDays(30); // $now permanece inalterado — imutabilidade garantida ``` > **Cronograma de suporte** > > O Laravel 12 recebe correções de bugs até agosto de 2026 e patches de segurança até fevereiro de 2027. O Laravel 13, lançado em 17 de março de 2026, é agora a versão maior mais recente — mas a atualização de 12 para 13 não envolve mudanças incompatíveis. ## Melhorias notáveis nas versões de patch Enquanto a versão 12.0 inicial focou nos Starter Kits, os patches subsequentes até a versão 12.12.2 (a última versão 12.x) introduziram adições úteis: ### Helpers para arrays e coleções ```php use Illuminate\Support\Arr; // Filtrar por valores em vez de chaves (adicionado em 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 se uma coleção possui múltiplos itens $users = collect([/* ... */]); if ($users->containsManyItems()) { // Tratar operação em lote } ``` ### Melhorias em Gates e autorização ```php use Illuminate\Support\Facades\Gate; // Suporte a UnitEnum em Gate::has() (adicionado em 12.45.2) enum Permission { case ViewDashboard; case ManageUsers; } if (Gate::has(Permission::ViewDashboard)) { // A habilidade está definida — mais seguro que verificações baseadas em strings } ``` ### Correções em Schema e Container Os métodos `Schema::getTables()`, `Schema::getViews()` e `Schema::getTypes()` agora retornam resultados de todos os schemas por padrão. O contêiner de injeção de dependências respeita os valores padrão das propriedades de classe ao resolver instâncias, e `mergeIfMissing()` suporta notação de ponto aninhada para um tratamento mais limpo das requisições. ## Guia de migração: Laravel 11 para Laravel 12 O caminho de migração do Laravel 11 para o 12 é intencionalmente simples. A maioria das aplicações requer apenas a atualização das versões das dependências. **Passo 1** — Atualizar o `composer.json`: ```json { "require": { "php": "^8.2", "laravel/framework": "^12.0", "nesbot/carbon": "^3.0" } } ``` **Passo 2** — Executar a atualização do Composer: ```bash composer update ``` **Passo 3** — Verificar os casos especiais. As cinco áreas com maior probabilidade de necessitar ajustes: 1. **`Concurrency::run`** com arrays associativos agora retorna resultados indexados por chave 2. **O disco local** aponta por padrão para `storage/app/private` em vez de `storage/app` 3. **Chamadas ao Carbon 2** devem ser atualizadas para a API do Carbon 3 4. **Os métodos de Schema** agora retornam resultados de múltiplos schemas 5. **Argumentos nomeados** em chamadas a métodos do Laravel podem quebrar se os nomes dos parâmetros mudaram Para aplicações que utilizam [Eloquent](/blog/laravel/eloquent-orm-patterns-optimizations), [middleware](/blog/laravel/laravel-middleware-deep-dive) ou [sistemas de filas](/blog/laravel/laravel-queues-jobs-architecture), a migração geralmente é concluída em minutos. ## Perguntas essenciais de entrevista sobre Laravel 12 para 2026 As entrevistas técnicas para vagas de Laravel em 2026 abrangem tanto os fundamentos do framework quanto o conhecimento das mudanças recentes. As perguntas abaixo refletem o que as equipes de recrutamento perguntam ativamente, organizadas por nível de senioridade. ### Perguntas de nível júnior **O que mudou nos Starter Kits do Laravel 12 em comparação com o Breeze?** O Breeze e o Jetstream exigiam instalação em um projeto existente e adicionavam suas próprias dependências de pacotes. Os Starter Kits do Laravel 12 geram um projeto completo com todo o código de autenticação diretamente na aplicação — sem lógica oculta em pacotes. Os kits utilizam stacks de frontend modernos (React 19, Vue 3, Svelte 5 ou Livewire 4) com TypeScript e componentes [shadcn/ui](https://ui.shadcn.com/) por padrão. **Explicar o Service Container e a Injeção de Dependências no Laravel.** O [service container](/technologies/laravel/interview-questions/service-container-di) é a ferramenta do Laravel para gerenciar dependências de classes. Quando uma classe declara parâmetros de construtor com tipos definidos, o contêiner resolve e injeta automaticamente as instâncias apropriadas. No Laravel 12, o contêiner agora respeita os valores padrão das propriedades durante a resolução — uma mudança sutil, mas importante. ```php // O contêiner resolve dependências automaticamente class OrderService { public function __construct( private PaymentGateway $gateway, // Resolvido automaticamente private int $retryLimit = 3 // Valor padrão respeitado no Laravel 12 ) {} } ``` ### Perguntas de nível pleno **Como funciona o middleware no Laravel e o que mudou nas versões recentes?** O [middleware](/technologies/laravel/interview-questions/middleware) filtra as requisições HTTP antes que cheguem ao controlador. O Laravel 12 corrigiu um bug de recursão infinita onde um grupo de middleware que referenciava a si mesmo causava um estouro de pilha. O middleware pode lidar com autenticação, CORS, limitação de taxa e registro de requisições. Middleware personalizado é criado com `php artisan make:middleware`. **Descrever a arquitetura do sistema de filas.** As [filas](/technologies/laravel/interview-questions/queues-jobs) do Laravel adiam tarefas demoradas (envio de e-mails, geração de relatórios, processamento de imagens) para workers em segundo plano. Os jobs são despachados para drivers como Redis, Amazon SQS ou o banco de dados. O Laravel 12 fez backport do suporte a filas na nuvem da versão 13.x, expandindo as opções de deploy para ambientes serverless. ```php // Despachar um job para a fila use App\Jobs\ProcessInvoice; ProcessInvoice::dispatch($order) ->onQueue('invoices') ->delay(now()->addMinutes(5)); ``` ### Perguntas de nível sênior **Comparar o Repository Pattern com o uso direto do Eloquent em aplicações Laravel.** O uso direto do Eloquent nos controladores cria um acoplamento forte entre a camada HTTP e o banco de dados. O Repository Pattern introduz uma camada de abstração: uma interface de repositório define os métodos de acesso a dados, e uma classe concreta os implementa com Eloquent. Essa separação melhora a testabilidade (repositórios podem ser mockados), suporta a troca de fontes de dados e impõe limites de responsabilidade única. O trade-off é a complexidade adicional. Aplicações pequenas raramente se beneficiam de repositórios. Aplicações grandes com múltiplas fontes de dados, consultas complexas ou requisitos rigorosos de testes obtêm uma clareza arquitetural significativa. **Como preparar uma aplicação Laravel 12 para a migração para o Laravel 13?** O Laravel 13 foi lançado sem mudanças incompatíveis em relação à versão 12, tornando a migração direta. Os passos-chave de preparação: garantir a compatibilidade com PHP 8.3+ (a versão 13 remove o PHP 8.2), auditar o uso de padrões do Carbon 2 obsoletos e testar os service providers personalizados contra o novo sistema de configuração baseado em atributos. Equipes interessadas no [SDK de IA do Laravel 13](https://laravel.com/docs/13.x/ai-sdk) devem avaliar seus requisitos de busca vetorial e RAG antecipadamente, pois o suporte nativo ao pgvector funciona apenas com PostgreSQL. > **Preparação para entrevistas** > > Os entrevistadores em 2026 perguntam cada vez mais sobre o caminho de migração entre versões do Laravel. Demonstrar conhecimento da cadeia de migração 11 → 12 → 13 — e da filosofia de zero mudanças incompatíveis — sinaliza experiência prática acima do conhecimento teórico. ## Laravel 12 vs Laravel 13: vale a pena migrar agora? | Recurso | Laravel 12 | Laravel 13 | |---------|-----------|------------| | Requisito de PHP | 8.2 - 8.5 | 8.3 - 8.5 | | Starter Kits | React/Vue/Svelte/Livewire | Os mesmos + Multi-Tenancy por equipes | | SDK de IA | Beta (`laravel/ai`) | Estável, pronto para produção | | Busca vetorial | Não disponível | Suporte nativo pgvector | | Passkeys | Apenas via WorkOS | Nativo no Fortify | | Mudanças incompatíveis desde 11 | Mínimas | Zero desde 12 | | Correções de bugs até | Agosto 2026 | T3 2027 | Para equipes que não utilizam recursos de IA nem passkeys, o Laravel 12 permanece totalmente suportado até agosto de 2026. A migração para a versão 13 pode ser realizada assim que a compatibilidade com PHP 8.3 for confirmada em todas as dependências. ## Conclusão - O Laravel 12 substitui o Breeze e o Jetstream por quatro Starter Kits modernos construídos sobre React 19, Vue 3, Svelte 5 e Livewire 4 — todo o código fica diretamente na aplicação - A integração com WorkOS AuthKit adiciona login social, passkeys e SSO sem implementação personalizada — gratuito até um milhão de usuários mensais - A migração do Laravel 11 não requer alterações de código na maioria das aplicações — Carbon 3, Symfony 7 e PHP 8.2+ são as principais mudanças de dependências - As versões de patch até 12.12.2 adicionaram `Arr::onlyValues()`, `Arr::exceptValues()`, `containsManyItems()` e suporte a UnitEnum no Gate - A preparação para entrevistas em 2026 deve cobrir as diferenças dos Starter Kits, as mudanças no service container e o caminho de migração do Laravel 12 para o 13 - O Laravel 13 (março 2026) oferece SDK de IA nativo, busca vetorial e passkeys — mas o Laravel 12 recebe patches de segurança até fevereiro de 2027 --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pt/blog/laravel/laravel-12-features-starter-kits-interview-questions