<
⌘K
GitHub v2.4.0

Routing

Routes map HTTP requests to controllers or closures. Define them in routes/web.php.

Basic Routes

use DevPortal\Router;

Router::get('/',        [HomeController::class, 'index']);
Router::get('/about',   [PageController::class, 'about']);
Router::post('/login',  [AuthController::class, 'login']);
Router::delete('/posts/{id}', [PostController::class, 'destroy']);

Named Parameters

Wrap segments in {curly} braces. They're passed as arguments to the controller method:

Router::get('/users/{id}/posts/{slug}', function($id, $slug) {
    return "User $id — Post $slug";
});

Route Middleware

Attach middleware to a route or group:

Router::get('/dashboard', [DashController::class, 'index'])
    ->middleware('auth');

Router::group(['middleware' => ['auth', 'verified']], function () {
    Router::get('/settings', [SettingsController::class, 'index']);
    Router::post('/settings', [SettingsController::class, 'update']);
});

Named Routes

Router::get('/profile', [ProfileController::class, 'show'])->name('profile');

// Generate URL
$url = route('profile'); // → /profile
✅ Tip Run php devportal routes:list in the terminal to see all registered routes, methods, and middleware.
<