# cPanel Installation Guide

## 1. Upload Files

- Upload the full project to your hosting account.
- Point the domain or subdomain document root to the Laravel `public` folder.

## 2. Create Database

- In cPanel, create a MySQL database and user.
- Grant all privileges to that user.

## 3. Update `.env`

Set values similar to:

```env
APP_NAME="Print Cards"
APP_ENV=production
APP_DEBUG=false
APP_URL=https://your-domain.com

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=your_database
DB_USERNAME=your_user
DB_PASSWORD=your_password
```

## 4. Generate App Key

Run:

```bash
php artisan key:generate
```

## 5. Run Migrations and Seeders

```bash
php artisan migrate --seed --force
```

This creates:

- default roles
- homepage and pricing settings
- demo coupon `WELCOME50`
- admin login `admin@printcards.test` / `Admin@12345`

## 6. Storage Link

If your host allows artisan commands:

```bash
php artisan storage:link
```

## 7. Payment Setup

- Open admin settings after login.
- Update the payment keys for Razorpay or PayU.
- Set demo mode off after live gateway testing is complete.

## 8. Courier Setup

- Open admin settings and update the default courier partner.
- Admin order pages allow manual tracking ID, note, and location updates.
- Extend the webhook or admin layer for live Delhivery, India Post, or other courier APIs if needed.

## 9. Security Checklist

- Force HTTPS in hosting.
- Use strong database and admin passwords.
- Change the default admin password immediately.
- Keep `APP_DEBUG=false` in production.

## 10. First Login

- Admin URL: `/login`
- Email: `admin@printcards.test`
- Password: `Admin@12345`
