WONDERQUEST — UPLOAD TO YOUR DOMAIN (cPanel / shared hosting with Node.js)
===========================================================================
This zip is ONE app: the Node.js backend + the built React frontend (client/).
One setup serves the whole site — no CORS, no separate frontend upload.

REQUIREMENTS
- Hosting with "Setup Node.js App" (Node 18+): Hostinger Business, Namecheap
  Stellar Plus, most cPanel hosts. (Plain static-only hosting will NOT work.)
- Free MongoDB Atlas database (shared hosts can't run MongoDB locally).

STEP 1 — DATABASE (5 min)
  1. atlas.mongodb.com -> create free M0 cluster.
  2. Database Access -> add user (password auth).
  3. Network Access -> allow 0.0.0.0/0.
  4. Copy connection string, e.g.
     mongodb+srv://USER:PASS@cluster0.xxxxx.mongodb.net/wonderquest

STEP 2 — UPLOAD
  1. cPanel -> File Manager -> create folder "wonderquest" in your home
     directory (NOT inside public_html).
  2. Upload this zip there and Extract.
  3. Rename .env.example to .env and edit it:
     - MONGO_URI  = your Atlas string
     - CLIENT_URL = https://wonderquest.topreviewblog.com

STEP 3 — NODE APP
  1. cPanel -> "Setup Node.js App" -> Create Application:
     - Node version: 18+ (highest available)
     - Application root: wonderquest
     - Application URL: wonderquest.topreviewblog.com  (leave path empty = site root)
     - Startup file: server.js
  2. Click "Run NPM Install".
  3. Click "Start App" (or Restart).
  4. Visit https://wonderquest.topreviewblog.com — the app seeds its own starter content
     on first boot (autoSeed) and serves the site.

CHECKS
  - https://wonderquest.topreviewblog.com/api/health  -> {"status":"ok"}
  - If you see "Route not found" on the homepage, the client/ folder is
    missing next to server.js — re-extract the zip.

ALTERNATIVE (no Node on your host?)
  Host backend free on Railway/Render (root = this folder, start: npm start),
  then rebuild the frontend with VITE_API_URL=<railway-url> and upload only
  the static files. Ask Claude to make that version.

NOTE
  server.js in this zip has a small addition at the bottom (serves client/
  and SPA routes). Your original project files were not modified.
