Repolode
spatie

spatie/laravel-route-attributes

Paquete de Laravel que permite registrar rutas colocando atributos de PHP 8 directamente en las clases y los métodos de los controladores.

Estrellas
883
Forks
85
Issues abiertos
0
Último commit
anteayer

¿Qué es?

laravel-route-attributes permite a los desarrolladores de Laravel declarar las rutas junto al código de los controladores a los que apuntan. Al añadir un atributo como #[Get('my-route')] a un método del controlador, el paquete registra la llamada equivalente a Route::get, por lo que ya no es necesario mantener las rutas en un archivo independiente.

El paquete analiza los directorios de controladores configurados y admite todos los verbos HTTP habituales, además del atributo Resource para controladores de recursos y una variante ApiResource. Los atributos también permiten definir nombres de rutas, middleware, prefijos, dominios, grupos, restricciones de parámetros como WhereUuid o WhereNumber, valores predeterminados para parámetros, bindings con alcance y bindings de modelos eliminados de forma lógica.

Se pueden configurar directorios con middleware, prefijos y namespaces específicos para cada uno, algo útil en aplicaciones modulares. Los patrones de archivos y de exclusión permiten limitar el análisis a archivos concretos, por ejemplo, solo a los archivos de controladores de una carpeta que también contiene pruebas.

Funciones clave

  • 01Registrar rutas con atributos de PHP 8 en clases y métodos de controladores.
  • 02Admite todos los verbos HTTP estándar, además de rutas con varios verbos y rutas para cualquier verbo.
  • 03Los atributos Resource y ApiResource generan rutas de recursos con opciones only/except y de nombres.
  • 04Atributos para middleware, prefijos, dominios, nombres de rutas y restricciones de parámetros.
  • 05Configuración de directorios con middleware, prefijos y namespaces específicos para cada uno.
  • 06Opciones de patrones y exclusión de archivos para controlar cuáles se analizan.

Casos de uso

  • Mantener las rutas junto a los controladores en una aplicación Laravel.
  • Organizar las rutas de proyectos Laravel modulares cuyos controladores están en directorios de módulos independientes.
  • Crear API REST con rutas de recursos declaradas directamente en los controladores.

Inicio rápido

  1. 1

    Instala el paquete con Composer

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

    Publica el archivo de configuración

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

    Añade atributos de ruta a las clases y métodos de tu controlador

En colecciones

Temas

Preguntas frecuentes

¿Qué es laravel-route-attributes?
Paquete de Laravel que permite registrar rutas colocando atributos de PHP 8 directamente en las clases y los métodos de los controladores. laravel-route-attributes permite a los desarrolladores de Laravel declarar las rutas junto al código de los controladores a los que apuntan. Al añadir un atributo como #[Get('my-route')] a un método del controlador, el paquete registra la llamada equivalente a Route::get, por lo que ya no es necesario mantener las rutas en un archivo independiente.
¿laravel-route-attributes es gratuito? ¿Qué licencia tiene?
laravel-route-attributes es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿laravel-route-attributes sigue mantenido?
Mantenimiento activo. El último commit de laravel-route-attributes fue el 5 nov 2026.
¿Para qué puedo usar laravel-route-attributes?
Mantener las rutas junto a los controladores en una aplicación Laravel. Organizar las rutas de proyectos Laravel modulares cuyos controladores están en directorios de módulos independientes. Crear API REST con rutas de recursos declaradas directamente en los controladores.
¿Cómo se instala laravel-route-attributes?
Instala el paquete con Composer: composer require spatie/laravel-route-attributes Publica el archivo de configuración: php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config" Añade atributos de ruta a las clases y métodos de tu controlador
¿Dónde consigo laravel-route-attributes?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/spatie/laravel-route-attributes

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados