LaraBoom
A thin layer on Laravel. One entity lives in one Resource. Schema, JSON CRUD, and gates come from that description.
LaraBoom is a small high-level layer on Laravel. Eloquent, queues, Blade, and Sanctum stay. You stop cloning the usual folder tree for every noun in the app.
Repository: github.com/VladimirKostikov/LaraBoom. Docs: vladimirkostikov.gitbook.io/laraboom.
What problem this solves
Laravel is a strong runtime. The pain is how one business entity spreads across many files. A Product often needs a model, a migration, a controller, two FormRequests, a policy, an API resource, and a route line. Rename a column and you hunt through all of them.
LaraBoom cuts the files you write. You describe the entity once. The package turns that into table sync, /api/{resource} CRUD, list filters, and gates.
Resource and Path
A Resource owns data and the JSON API. Fields define columns and validation. Attributes define migrate, allow, scopes, jobs, and mail.
A Path owns web pages. Methods with Get and Post return views, redirects, and forms. There is no host routes/web.php and no app/Http tree.
JSON stays under /api. A Path injects the Resource and calls query() when a page needs rows.
Why the shape is like this
- Schema lives in code. Fields plus migrate, then
php boom sync. - Access sits on the class that already owns the action, not in a parallel Policy tree.
- Business code sits next to the entity. When a method grows, it moves to
Resources/X/Service.php. - An assistant loads one or two files for a feature instead of six to ten.
This site runs on LaraBoom. The host follows the same rules: no host routes/, no app/Http, JSON under /api.
MIT license. PHP 8.3 and Laravel 13. Start from the GitHub repository.
