Repolode
spatie

spatie/laravel-route-attributes

Um pacote Laravel que permite registrar rotas com atributos do PHP 8 diretamente em classes e métodos de controllers.

Estrelas
883
Forks
85
Issues abertas
0
Último commit
anteontem

O que é?

laravel-route-attributes permite que desenvolvedores Laravel declarem rotas junto ao código dos controllers para os quais elas apontam. Ao adicionar um atributo como #[Get('my-route')] a um método de controller, o pacote registra a chamada equivalente a Route::get, dispensando a manutenção das rotas em um arquivo separado.

O pacote examina os diretórios de controllers configurados e oferece suporte a todos os verbos HTTP comuns, além do atributo Resource para controllers de recursos e de uma variante ApiResource. Os atributos também abrangem nomes de rotas, middleware, prefixes, domains, definições de grupos, restrições de parâmetros como WhereUuid ou WhereNumber, valores padrão para parâmetros, bindings com escopo e binding de models excluídos com soft delete.

É possível configurar diretórios com middleware, prefixes e namespaces específicos para cada um, o que é útil em aplicações modulares. Padrões de arquivos e de exclusão permitem limitar a busca a arquivos específicos, como apenas os arquivos de controllers em uma pasta que também contém testes.

Recursos principais

  • 01Registrar rotas com atributos do PHP 8 em classes e métodos de controllers.
  • 02Oferece suporte a todos os verbos HTTP padrão, além de rotas com vários verbos e rotas para qualquer verbo.
  • 03Os atributos Resource e ApiResource geram rotas de recursos com opções only/except e de nomenclatura.
  • 04Atributos para middleware, prefixes, domains, nomes de rotas e restrições de parâmetros.
  • 05Configuração de diretórios com middleware, prefixes e namespaces específicos para cada diretório.
  • 06Opções de padrões e exclusão de arquivos para controlar quais arquivos são examinados.

Casos de uso

  • Manter as rotas junto aos controllers em uma aplicação Laravel.
  • Organizar rotas em projetos Laravel modulares que mantêm os controllers em diretórios separados por módulo.
  • Criar APIs REST com rotas de recursos declaradas diretamente nos controllers.

Início rápido

  1. 1

    Instale o pacote com o Composer

    composer require spatie/laravel-route-attributes
  2. 2

    Publique o arquivo de configuração

    php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config"
  3. 3

    Adicione atributos de rota às classes e aos métodos do seu controlador

Em coleções

Tópicos

Perguntas frequentes

O que é laravel-route-attributes?
Um pacote Laravel que permite registrar rotas com atributos do PHP 8 diretamente em classes e métodos de controllers. laravel-route-attributes permite que desenvolvedores Laravel declarem rotas junto ao código dos controllers para os quais elas apontam. Ao adicionar um atributo como #[Get('my-route')] a um método de controller, o pacote registra a chamada equivalente a Route::get, dispensando a manutenção das rotas em um arquivo separado.
laravel-route-attributes é gratuito? Qual é a licença?
laravel-route-attributes é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
laravel-route-attributes ainda é mantido?
Manutenção ativa. O último commit de laravel-route-attributes foi em 5 de nov. de 2026.
Para que posso usar laravel-route-attributes?
Manter as rotas junto aos controllers em uma aplicação Laravel. Organizar rotas em projetos Laravel modulares que mantêm os controllers em diretórios separados por módulo. Criar APIs REST com rotas de recursos declaradas diretamente nos controllers.
Como instalar laravel-route-attributes?
Instale o pacote com o Composer: composer require spatie/laravel-route-attributes Publique o arquivo de configuração: php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config" Adicione atributos de rota às classes e aos métodos do seu controlador
Onde consigo laravel-route-attributes?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/spatie/laravel-route-attributes

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados