How to organize Laravel routes into separate files for better organization and readability.
This isn’t something that would be done for a small project, rather a large one whereby the web.php or api.php file is getting congested, hard to read or to locate code you need.
I have found the most readable way is to do a prefix first in the base routes web.php file.
This example will be creating a separate routes file for Users
In the base routes web.php file:
Route::prefix('/users')->group(__DIR__.'/web/userRoutes.php');
Now in routes/
create a folder called web
then create userRoutes.php
file and put all your routes for the Users controller
Route::get('account/details', 'UserControllerController@showDetails'); Route::post('account/update', 'UserControllerController@accountUpdate'); //ect....
You then follow this process for each of the controllers e.g Products, Orders, Invoices etc.
The end result will be that your web.php file will only have prefixes and will be much smaller.