# Technology Stack

## Backend
- **PHP**: ^8.2
- **Laravel Framework**: ^12.0
- **Filament**: 4.0 (Admin panel framework)
- **Database**: SQLite (default), supports MySQL/PostgreSQL

## Key Laravel Packages
- **filament/filament**: Admin panel UI
- **bezhansalleh/filament-shield**: Role-based access control
- **spatie/laravel-medialibrary**: Media file management
- **maatwebsite/excel**: Excel import/export
- **pxlrbt/filament-excel**: Filament Excel integration

## Frontend
- **Vite**: ^7.0.7 (Build tool)
- **Tailwind CSS**: ^4.0.0
- **Laravel Vite Plugin**: ^2.0.0
- **Axios**: ^1.11.0

## Development Tools
- **PHPUnit**: ^11.5.3 (Testing)
- **Laravel Pint**: ^1.24 (Code style)
- **Laravel Sail**: ^1.41 (Docker environment)
- **Laravel Pail**: ^1.2.2 (Log viewer)
- **Concurrently**: ^9.0.1 (Run multiple commands)

## Common Commands

### Setup
```bash
composer setup
# Runs: composer install, .env setup, key generation, migrations, npm install & build
```

### Development
```bash
composer dev
# Runs concurrently: Laravel server, queue worker, log viewer (pail), and Vite dev server
```

### Testing
```bash
composer test
# Runs: config:clear and PHPUnit tests
```

### Code Style
```bash
./vendor/bin/pint
# Format code using Laravel Pint
```

### Database
```bash
php artisan migrate
php artisan db:seed
```

### Filament
```bash
php artisan filament:upgrade
# Upgrade Filament assets after updates
```

### Asset Building
```bash
npm run dev    # Development with hot reload
npm run build  # Production build
```

## Configuration Notes
- Uses `.env` for environment configuration
- Default timezone: UTC
- Default locale: en (with fallback support)
- Session driver: database
- Queue connection: database
- Cache store: database
