Sadrลพaj
Laravel 12 Setup + Bash Skripta
๐ README.md
# ๐ Laravel 12 Project Setup Guide
Osnovni i napredni koraci za postavljanje modernog Laravel 12 projekta sa Livewire 3, Spatie paketima i sigurnosnim praksama.
---
## ๐งฐ Tehnologije i Verzije
- Laravel 12
- Livewire 3 Starter Kit
- PHP 8.2+
- Composer 2+
---
## โ
Starter Kit
```bash
composer require laravel/breeze --dev
php artisan breeze:install livewire
npm install && npm run build
php artisan migrate
๐ Debugging alati
composer require barryvdh/laravel-debugbar --dev
composer require laravel/telescope --dev
php artisan telescope:install
php artisan migrate
๐ Lazy Loading & Strict Mode
use Illuminate\Database\Eloquent\Model;
if (! app()->isProduction()) {
Model::shouldBeStrict();
}
โ Prevencija Destruktivnih Komandi
if (app()->isProduction()) {
$this->error('Blocked in production!');
return;
}
๐งช Testing Okruzenje
.env.testing
:
DB_CONNECTION=sqlite
DB_DATABASE=:memory:
Testiraj:
php artisan test
๐ฆ Spatie Paketi
# Permissions
composer require spatie/laravel-permission
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider"
php artisan migrate
# Backup
composer require spatie/laravel-backup
php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
# Health
composer require spatie/laravel-health
php artisan vendor:publish --tag="health-config"
# Activity Log
composer require spatie/laravel-activitylog
php artisan vendor:publish --provider="Spatie\Activitylog\ActivitylogServiceProvider" --tag="activitylog-config"
# Media Library
composer require spatie/laravel-medialibrary
php artisan vendor:publish --tag="media-library-config"
php artisan migrate
๐ Log Viewer
composer require opcodesio/log-viewer
php artisan log-viewer:publish
Otvorite /log-viewer
za pregled logova.
๐ง Mail konfiguracija
.env
:
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=your_user
MAIL_PASSWORD=your_pass
MAIL_FROM_ADDRESS=mkopcic@gmail.com
MAIL_FROM_NAME="Laravel App"
๐ง Bonus Savjeti
- Laravel Pint:
composer require laravel/pint --dev
- Swagger za API dokumentaciju
- CI/CD workflow opcionalno
โ Gotovo!
Sretno s projektom โ ฤisto, testirano i sigurno! ๐งโ๐ป
---
## โ๏ธ setup.sh
```bash
#!/bin/bash
echo "๐ Laravel 12 Setup with Livewire 3 & Spatie Packages"
# Step 1: Install Laravel
composer create-project laravel/laravel laravel-app
cd laravel-app
# Step 2: Install Breeze + Livewire
composer require laravel/breeze --dev
php artisan breeze:install livewire
npm install && npm run build
php artisan migrate
# Step 3: Debugging Tools
composer require barryvdh/laravel-debugbar --dev
composer require laravel/telescope --dev
php artisan telescope:install
php artisan migrate
# Step 4: Spatie Packages
composer require spatie/laravel-permission
composer require spatie/laravel-backup
composer require spatie/laravel-health
composer require spatie/laravel-activitylog
composer require spatie/laravel-medialibrary
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider"
php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
php artisan vendor:publish --tag="health-config"
php artisan vendor:publish --provider="Spatie\Activitylog\ActivitylogServiceProvider" --tag="activitylog-config"
php artisan vendor:publish --tag="media-library-config"
# Step 5: Log Viewer
composer require opcodesio/log-viewer
php artisan log-viewer:publish
echo "โ
Setup completed. Happy coding!"