Skip to content

Project Structure

This page is a usage-oriented orientation: where things go in a redot/core app, so you know which file to open when you want to change something. The package itself ships behind Composer in vendor/ — you work in your own app directory and lean on what the package provides.

Where you put your code

A redot/core app follows the standard Laravel layout. The places you touch most often are:

  • app/sidebar.php — your dashboard navigation. Edit this file to add, reorder, or nest menu items. See Sidebar.
  • app/Http/Controllers/ — your dashboard and website controllers. Scaffold a full CRUD controller with make:entity.
  • app/Models/ — your application models.
  • resources/views/ — your Blade views. Scaffolded CRUD views land under resources/views/dashboard/<resource>/.
  • resources/layouts/ — your page layouts and their partials (sidebar, navbar, footer). See Layouts.
  • resources/templates/ — small reusable partials for PDF export and remote select options. See Templates.
  • config/redot.php — the dashboard config, once published. See Configuration.
  • stubs/ — published generator stubs you can edit to change scaffolded markup. See Scaffolding & Stubs.

Where data lives

  • Settings — editable application settings (logos, app name, theme, analytics keys) are stored in the database and read with the setting() helper, not from config files.
  • Languages & translation tokens — the database-backed translation workflow stores its strings in the database; the lang:* commands move them to and from your lang/ files. See Localization.
  • Migrations — the dashboard's tables (settings, languages, translation tokens, login tokens, permissions) come from the package and are installed by publishing migrations and running php artisan migrate. See Installation.

Frontend assets

The dashboard frontend ships as static assets under public/assets, with a build step that compiles per-locale translations and component initializers. You don't run a bundler for the platform layer. See the Asset & Init System.

Using what the package provides

The package exposes helpers, models, traits, casts, and rules under the Redot\ namespace. Reach for them from your own classes — for example the base controller, the file-upload trait, the language and settings models, or the language-token jobs. The bundled feature packages (Auth, Datatables, Sidebar, Toastify, LangExtractor) each have their own documentation page linked below.

Proprietary — for use within the Redot Dashboard. Product site: redot.dev