Illuminate Routing
The HTTP routing component that powers Laravel's request dispatching
Repository Health
Technical Analysis
Illuminate Routing (illuminate/routing) is the HTTP routing component of the Laravel framework, distributed as a standalone Composer package via a read-only subtree split of laravel/framework. It maps incoming HTTP requests to controllers and closures, supporting route parameters, groups, prefixes, named routes, middleware, resource routes, and implicit model binding.
Built on Symfony’s HttpFoundation and Routing components, it provides the Router, RouteCollection, and dispatchers that resolve a request to its handler, plus a URL generator and redirector for building links and redirects. It is the engine behind Laravel’s expressive routing DSL and can be used within the framework or standalone.
What You Get
- A Router and RouteCollection for registering and matching routes
- Route groups, prefixes, named routes, and resource/singleton registrars
- Middleware assignment, sorting, and controller middleware options
- Implicit and explicit route model binding
- A UrlGenerator and Redirector for building links and redirects
Common Use Cases
- Defining web and API routes that dispatch to controllers or closures
- Grouping routes under shared middleware, prefixes, and name namespaces
- Generating URLs and redirects to named routes with parameters
Under The Hood
Architecture - The Router registers routes into a RouteCollection (with CompiledRouteCollection for cached matching) and dispatches matched Route instances through a middleware Pipeline to a ControllerDispatcher or CallableDispatcher. Resource routing is handled by ResourceRegistrar and pending-registration helpers, model binding by ImplicitRouteBinding and RouteBinding, and link building by UrlGenerator/RouteUrlGenerator and Redirector. A RoutingServiceProvider wires it into Laravel.
Tech Stack - Pure PHP targeting PHP 8.3+, depending on Illuminate collections, container, contracts, http, macroable, pipeline, session, and support, and building on symfony/http-foundation, symfony/http-kernel, and symfony/routing for request handling and route compilation.
Code Quality - As a first-party Laravel component maintained in laravel/framework, it is exercised by the framework’s extensive test suite and CI and has hundreds of contributors. The dispatcher, matching, and binding responsibilities are cleanly separated across dedicated classes.
API Design - The routing DSL is one of Laravel’s most praised features: Route::get('/posts/{post}', [PostController::class, 'show']), fluent ->middleware(), ->name(), and Route::group() calls read declaratively, and implicit model binding removes boilerplate. Official Laravel documentation is thorough, making the component approachable despite the power underneath.