# 🚀 cPanel Deployment Guide — Hello Student Consultants Referral App

Is guide ko follow karke aap apni Referral Application ko **cPanel** par 10 se 15 minute mein live kar sakte hain (Subdomain: `https://referral.hellostudentconsultant.com`).

---

## 📁 Ready Files Structure (Upload ke liye)

Aapko sirf `backend` folder ki files upload karni hain kyunke humne frontend ka production build (`dist`) backend ke andar configure kar diya hai:

```
referral/ (cPanel Root Directory)
├── app.js                   (cPanel Passenger entrypoint)
├── package.json
├── package-lock.json
├── dist/                    (Frontend React static build)
├── src/
│   ├── controllers/
│   ├── routes/
│   ├── middleware/
│   ├── db/
│   └── server.js
├── data/
│   └── database.json
└── public/
    └── uploads/
```

> ⚠️ **Note:** Apne local computer se `node_modules` folder ko ZIP mein **shamil na karein**. Yeh cPanel par 1-click se install ho jayega.

---

## 🛠️ Step-by-Step Instructions

### Step 1: cPanel mein Subdomain Create Karein
1. cPanel mein Login karein.
2. **Domains** section mein ja kar **Domains** ya **Subdomains** par click karein.
3. Naya subdomain banayein:
   - **Domain Name**: `referral.hellostudentconsultant.com`
   - **Document Root**: `referral` (ya `public_html/referral`)
4. **Create / Submit** par click karein.

---

### Step 2: Project Files ko ZIP karke Upload Karein
1. Apne computer par `d:\HSC referal\backend` folder mein jayein.
2. Sabhi files aur folders select karein (**node_modules ko chhor kar**):
   - `app.js`
   - `package.json`
   - `package-lock.json`
   - `dist`
   - `src`
   - `data`
   - `public`
3. Inhein Right-click karke **Compress to ZIP** karein (e.g. `hsc-referral-deploy.zip`).
4. cPanel **File Manager** open karein aur apne subdomain folder (`/referral`) mein ja kar yeh ZIP file **Upload** karein.
5. ZIP file par Right-click karke **Extract** kar dein.

---

### Step 3: cPanel "Setup Node.js App" Configure Karein
1. cPanel Home screen par jayein aur **Software** section mein **"Setup Node.js App"** open karein.
2. Top right par **"Create Application"** button par click karein:
   - **Node.js version**: `18.x` ya `20.x` select karein.
   - **Application mode**: `Production`
   - **Application root**: `referral` (File manager wala folder path)
   - **Application URL**: `referral.hellostudentconsultant.com`
   - **Application startup file**: `app.js`
3. Right top par **"Create"** button dabayein.

---

### Step 4: NPM Dependencies Install Karein
1. Application create hone ke baad usi page par thora neeche scroll karein.
2. **"Run NPM Install"** button par click karein.
3. 30 se 60 seconds mein `express`, `cors`, `bcryptjs`, `jsonwebtoken` automatically install ho jayenge.

*(Optional Alternative: Agar cPanel mein Terminal access hai, toh top par show hone wali `source /home/...` command Terminal mein paste karke `npm install` run kar sakte hain).*

---

### Step 5: Restart Application & SSL Check
1. Top par **"Restart"** button par click karein.
2. cPanel **SSL/TLS Status** mein ja kar check karein ke `referral.hellostudentconsultant.com` par AutoSSL active ho chuka hai.
3. Browser mein open karein: `https://referral.hellostudentconsultant.com`

---

## 🔑 Default Login Credentials (Production)

| Role | Email | Password |
| :--- | :--- | :--- |
| **Super Admin** | `superadmin@hellostudentconsultant.com` | `Admin@123` |
| **Branch Admin** | `admin@hellostudentconsultant.com` | `Admin@123` |
| **Counsellor** | `fatima.counsellor@hellostudentconsultant.com` | `Counsellor@123` |
| **Ambassador** | `naveed@example.com` | `Referrer@123` |

---

## 🌐 WordPress Integration Setup

Aapke WordPress main website (`https://hellostudentconsultant.com`) par referral form aur tracking lagane ke liye:

1. **Lead Capture Form (Iframe)**:
   ```html
   <iframe 
     src="https://referral.hellostudentconsultant.com/embed/lead-form" 
     width="100%" 
     height="750px" 
     frameborder="0" 
     style="border:none; border-radius:16px; width:100%; max-width:680px; margin:0 auto; display:block;">
   </iframe>
   ```

2. **Auto-Attribution Script (Footer Script)**:
   WordPress Theme Footer / WPCode plugin mein yeh script add karein taake `?ref=CODE` link se aane wale students automatic track hon:
   ```html
   <script>
     (function() {
       const urlParams = new URLSearchParams(window.location.search);
       const refCode = urlParams.get('ref');
       if (refCode) {
         sessionStorage.setItem('hsc_ref_code', refCode);
         localStorage.setItem('hsc_ref_code', refCode);
         document.querySelectorAll('input[name="referral_code"], input[name="ref"]').forEach(el => {
           el.value = refCode;
         });
       }
     })();
   </script>
   ```
