lararoutes / lumen-custom-routes
Lumen package to help you customize your routes apiResources.
Installs: 522
Dependents: 0
Suggesters: 0
Security: 0
Stars: 11
Watchers: 3
Forks: 1
Open Issues: 0
pkg:composer/lararoutes/lumen-custom-routes
Requires
- php: ^7.2
This package is auto-updated.
Last update: 2025-10-06 21:56:29 UTC
README
Lumen package to help you customize your routes.
Specialize for whom using lumen,
If you don't you better do now, Lumen is stunningly micro-framework Faster 4x than laravel.
Installation
composer require lararoutes/lumen-custom-routes
Usage
Add those lines in top of routes/web.php
use Lararoutes\Lumen\CustomRoutes; $app = new CustomRoutes($router);
That's it. done
Example
Instead of doing this shit
$router->get('posts', 'PostController@index');
$router->post('posts', 'PostController@store');
$router->get('posts/{id}', 'PostController@show');
$router->put('posts/{id}', 'PostController@update');
$router->delete('posts/{id}', 'PostController@destroy');
We can simple do this now
$app->apiResource('posts', 'PostController');
However, you can also custom your routes as much as u want in Lararoutes\Lumen\CustomRoutes.php
function apiResoruce($uri, $controller)
{
$this->app->get($uri, $controller.'@index');
$this->app->post($uri, $controller.'@store');
$this->app->get($uri.'/{id}', $controller.'@show');
$this->app->put($uri.'/{id}', $controller.'@update');
$this->app->delete($uri.'/{id}', $controller.'@destroy');
// feel free to add more..
}
Another example for what you can do else
Instead of doing this
$router->group(['prefix' => 'auth'], function ($router) {
$router->post('resister', 'AuthController@register');
$router->post('login', 'AuthController@login');
$router->post('logout', 'AuthController@logout');
$router->post('refresh', 'AuthController@refresh');
$router->get('me', 'AuthController@me');
}
You can just drop one line like that
$app->authResource('auth', 'AuthController');
Just create new function authResource in Lararoutes\Lumen\CustomRoutes.php
function authResource($uri, $controller)
{
$this->app->post($uri.'/register', $controller.'@register');
$this->app->post($uri.'/login', $controller.'@login');
$this->app->post($uri.'/logout', $controller.'@logout');
$this->app->post($uri.'/refresh', $controller.'@refresh');
$this->app->get($uri.'/me', $controller.'@me');
}
You are welcome :)
Credits
License
The MIT License (MIT). Please see License File for more information.
