Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/AlexanderDamont1/Stratus/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Stratus POS is built on Laravel 12, which follows the Model-View-Controller (MVC) pattern. Incoming HTTP requests are routed to controllers, which interact with Eloquent models and return Blade views.

Directory structure

Stratus/
├── app/
│   ├── Http/
│   │   ├── Controllers/
│   │   │   ├── Auth/
│   │   │   │   ├── AuthenticatedSessionController.php
│   │   │   │   ├── RegisteredUserController.php
│   │   │   │   └── ... (7 more auth controllers)
│   │   │   ├── Controller.php
│   │   │   └── ProfileController.php
│   │   └── Requests/
│   ├── Models/
│   │   └── User.php
│   ├── Providers/
│   └── View/
├── config/
├── database/
│   ├── factories/
│   ├── migrations/
│   └── seeders/
├── resources/
│   ├── css/
│   ├── js/
│   └── views/
│       ├── auth/
│       ├── components/
│       ├── layouts/
│       ├── profile/
│       ├── dashboard.blade.php
│       └── welcome.blade.php
├── routes/
│   ├── web.php
│   ├── auth.php
│   └── console.php
└── tests/
    ├── Feature/
    └── Unit/

Routes

All route files live in routes/.
FilePurpose
web.phpMain application routes (dashboard, profile, etc.) — stateful, with session and CSRF middleware
auth.phpAuthentication routes generated by Laravel Breeze (login, register, password reset, email verification)
console.phpClosure-based Artisan commands
The auth.php file is included at the bottom of web.php via require __DIR__.'/auth.php'.

Controllers

Controllers live in app/Http/Controllers/. They receive validated requests, interact with models, and return responses.

App controllers

Controller.php — base controller class all others extend.ProfileController.php — handles profile editing and account deletion.

Auth controllers

All auth-related controllers live in Auth/ — login, registration, password management, and email verification.
See the Controllers reference for method-level documentation.

Models

Eloquent models live in app/Models/. Each model maps to a database table and encapsulates business logic. Currently Stratus has one model:
  • User — the foundation of all authentication and user identity.
See the Models reference for full details.

Views

Blade templates live in resources/views/ and are organised by feature:
DirectoryContents
auth/Login, register, password reset, email verification screens
components/Reusable Blade components (inputs, buttons, nav, etc.)
layouts/Application layout wrappers (app.blade.php, guest.blade.php)
profile/Profile edit screen
dashboard.blade.phpMain dashboard view
welcome.blade.phpPublic landing page

Form requests

Form request classes in app/Http/Requests/ encapsulate validation rules and authorisation logic, keeping controllers thin. Example: ProfileUpdateRequest validates the name and email fields when a user updates their profile.

Middleware

Middleware is applied to routes to enforce access control:
MiddlewarePurpose
authRequire an authenticated user
guestRedirect authenticated users away (login page, etc.)
verifiedRequire a verified email address
throttleRate limiting

Frontend

The frontend uses Tailwind CSS for styling and Vite for asset bundling.
PathContents
resources/css/app.cssTailwind CSS entry point
resources/js/app.jsJavaScript entry point
vite.config.jsVite configuration
public/build/Compiled assets (generated, not committed)
During development, Vite runs a dev server with hot module replacement. For production, assets are compiled to public/build/ with cache-busting hashes.

Service providers

Service providers in app/Providers/ bootstrap application services. The AppServiceProvider is the main extension point for binding interfaces, registering macros, and configuring packages.