Project overview
The application consists of an API (the back-end), and a Vue based front-end.
The API uses Laravel Sanctum as an authentication layer.
Multi-tenancy
Everything is built based on multi-tenancy. This means that database related code (migrations, models, seeders) are either based on the central database, or per tenant.
Back-end
The back-end is default Laravel with some extra files:
app/ActionsResource actions that can be executed (in bulk)app/AlertsAlerts that can be shown on resource detail pagesapp/FieldsCustom fields that extend the baseQore/SystemFieldapp/Http/PermissionScopesPermissions that consist of dependent (query) scopesapp/ResourcesThe resources that live in your application (similar to Nova)app/TablesTables that extend the baseQore/Tabletableapp/TabsTabs that can be shown on resource detail pages
Front-end
The front-end lives in the frontend directory. Quasar framework is used here.
quasar.conf.jsConfigurations for the appsrc/bootFiles that will be parsed when booting the app (registered inquasar.conf.js)src/componentsAll components that are not pages or layoutssrc/cssApp themingsrc/layoutsAuthentication and a main layoutsrc/localesTranslations json filessrc/mixinsMixins used in componentssrc/pagesPage componentssrc/routerThe router and the registered routessrc/storeAll vuex related modules