Tech Stack

Layer Technology Version
Backend Framework Laravel 12.x
Language PHP 8.4
Auth firebase/php-jwt (HS256) ^7.0
Frontend Framework Vue 3 (Composition API) ^3.5
State Management Pinia ^2.3
Routing (SPA) Vue Router ^4.5
CSS TailwindCSS 4.x (Vite plugin)
Build Tool Vite 7.x
Production Database MariaDB
Development/Offline DB SQLite
Queue / Cache Redis (Production), Sync/File (Local)
Deployment Docker (Multi-Stage Build)
Fonts @fontsource/space-grotesk, @fontsource/ibm-plex-mono

Quality Gates

All three gates must be green before every commit.

Tests (Pest + PHPUnit)

composer test
# entspricht: php artisan config:clear && php artisan test

The test driver is SQLite:memory:

. Test files are located attests/Feature/

andtests/Unit/

.

Static Analysis (PHPStan Level 8)

vendor/bin/phpstan analyse --memory-limit=1G

Level 8 requires complete type annotations — all Eloquent relationships are annotated with generic PHPDoc types.

Code Style (Laravel Pint)

vendor/bin/pint --test    # nur prüfen
vendor/bin/pint           # automatisch fixen