# One-time Installer

1. Upload the project and point the domain document root to `public/`.
2. Make `storage/` and `bootstrap/cache/` writable.
3. Ensure Composer dependencies are installed (`composer install --no-dev --optimize-autoloader`).
4. Open `https://YOUR-DOMAIN/install`.
5. Enter MySQL details and create the admin account.
6. The installer writes `.env`, runs migrations, creates the admin user, creates the storage link,
   and enables safe defaults:
   - Automation ON
   - Human Approval ON
   - YouTube privacy PRIVATE
7. Add OpenAI, ElevenLabs, optional Bing and YouTube OAuth credentials to `.env`.
8. Delete or protect the installer route/file after successful installation if your deployment policy requires it.
9. Configure queue worker and Laravel scheduler.

If you already imported `database/travel_ai.sql`, the installer should not be used to
re-import the schema; use either the SQL import route or the Laravel migration route,
not both on the same empty database.
