I think different developers have different experience / ideas
For example
1). What about developing your own set of packages to achieve kind of modular approach(not sure about this though) https://github.com/spatie
2). https://medium.com/@destinyajax/how-to-build-modular-applications-in-laravel-the-plug-n-play-approach-part-1-13a87f7de06
3). https://github.com/InfyOmLabs/laravel-generator
CRUDs can be generated instantly and then you can customize according to your requirements
a model.json file is created. Something like this
[
{
"name": "id",
"dbType": "increments",
"htmlType": null,
"validations": null,
"searchable": false,
"fillable": false,
"primary": true,
"inForm": false,
"inIndex": false,
"inView": false
},
{
"name": "name",
"dbType": "string",
"htmlType": "text",
"validations": "required",
"searchable": true,
"fillable": true,
"primary": false,
"inForm": true,
"inIndex": true,
"inView": true
},
{
"name": "description",
"dbType": "string",
"htmlType": "textarea",
"validations": "required",
"searchable": true,
"fillable": true,
"primary": false,
"inForm": true,
"inIndex": true,
"inView": true
},
{
"name": "created_at",
"dbType": "timestamp",
"htmlType": null,
"validations": null,
"searchable": false,
"fillable": false,
"primary": false,
"inForm": false,
"inIndex": false,
"inView": true
},
{
"name": "updated_at",
"dbType": "timestamp",
"htmlType": null,
"validations": null,
"searchable": false,
"fillable": false,
"primary": false,
"inForm": false,
"inIndex": false,
"inView": true
}
]
5). Sometimes the views might look the same so you could copy the entire folder and do minor changes (create.blade.php, edit.blade.php, index.blade.php, show.blade.php etc...)
6). What about forking your project from a certain point where it seems like common stuff can be applicable for most of the similar kind of projects etc..
7). Considering the option to delay on updating you laravel project between versions. May be re-writing the entire application after 4 / 5 years (Since then most of the technologies have changed including the frontend
(May be this approach raise security concerns , and mostly it can be due to third party plugins ?)