API REST em Laravel 11 para gestão de frota: veículos, motoristas, escalas, viagens, abastecimento, plantão (passagem de turno) e registro de hodômetro. Backend puro (sem views Blade).
- Laravel 11
- Laravel Sanctum (autenticação via token)
- SQLite (desenvolvimento e testes)
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan serveAutenticação via Sanctum (token expira em 8h). O login (POST /api/auth/login) aceita usuario (username) ou email. O model de autenticação é App\Models\Usuario (tabela usuarios, coluna de senha senha_hash) — não o User padrão do Laravel.
Rotas protegidas combinam os seguintes middlewares:
auth:sanctum— obrigatório em todas as rotas protegidasadmin(App\Http\Middleware\SomenteAdmin) — obrigatório no CRUD deusuariosescopo.unidade(App\Http\Middleware\EscopoUnidade) — escopo multi-tenant por unidade
composer dev # sobe servidor + queue + logs + Vite em paralelo
php artisan test # roda a suíte de testes (ou ./vendor/bin/phpunit)
./vendor/bin/pint # formatação de código
php artisan tinker # REPL interativoA documentação OpenAPI é gerada automaticamente (Scramble) e fica disponível em /docs/api com o servidor rodando.
Para detalhes de arquitetura (models, UUIDs como chave primária, estrutura de rotas, banco de dados), veja CLAUDE.md.