#!/usr/bin/env bash
# Phonics Mentor — Phase 0 scaffold
# Run this in an EMPTY directory. It creates the Laravel app, then you copy
# the starter kit files over the top.
set -euo pipefail

APP_NAME="phonics-mentor"

echo "==> Creating Laravel 12 project"
composer create-project laravel/laravel "$APP_NAME"
cd "$APP_NAME"

echo "==> Installing Breeze (Livewire stack)"
composer require laravel/breeze --dev
php artisan breeze:install livewire --dark=false

echo "==> Installing packages"
composer require razorpay/razorpay
composer require barryvdh/laravel-dompdf
composer require laravel/sanctum
composer require kreait/laravel-firebase

echo "==> Frontend deps"
npm install
npm install canvas-confetti

echo "==> Publishing Sanctum"
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"

echo "==> Storage link"
php artisan storage:link

cat <<'NOTE'

==> Next steps

1. Copy the starter kit over this project:
     cp -r ../phonics-mentor-starter/app/*          app/
     cp -r ../phonics-mentor-starter/database/*     database/
     cp -r ../phonics-mentor-starter/resources/*    resources/
     cp    ../phonics-mentor-starter/tailwind.config.js  .
     cp    ../phonics-mentor-starter/CLAUDE.md      .

2. Register middleware aliases in bootstrap/app.php:

     ->withMiddleware(function (Middleware $middleware) {
         $middleware->alias([
             'role'           => \App\Http\Middleware\EnsureRole::class,
             'child.selected' => \App\Http\Middleware\EnsureChildSelected::class,
         ]);
         $middleware->validateCsrfTokens(except: ['webhooks/*']);
     })

3. Configure .env (DB, MAIL, RAZORPAY_*, GEMINI_API_KEY, FIREBASE_*)
   and set:
     APP_TIMEZONE=UTC
     APP_URL=https://phonicsmentor.in

4. php artisan migrate --seed
5. npm run dev

NOTE
