- Node.js 18+
- MongoDB (local or Atlas)
- Gmail account (for email notifications)
No installation needed. Open frontend/index.html in any browser.
Works offline using localStorage. Connects to backend automatically when server is running.
cd backend
npm install
cp .env.example .envEdit .env with your values:
MONGODB_URI— your MongoDB connection stringJWT_SECRET— any long random stringEMAIL_USER/EMAIL_PASS— Gmail + App Password
npm run dev
# Server runs at http://localhost:3001- URL:
frontend/admin/login.html - Username:
admin - Password:
gedamu2026(change in.env)
- Push to GitHub
- Go to railway.app → New Project → Deploy from GitHub
- Set root directory to
backend - Add environment variables from
.env - Deploy
- Go to netlify.com
- Drag and drop the
frontend/folder - Done — instant URL
| Variable | Required | Description |
|---|---|---|
PORT |
No | Server port (default 3001) |
MONGODB_URI |
Yes | MongoDB connection string |
JWT_SECRET |
Yes | Secret for JWT tokens |
ADMIN_USERNAME |
Yes | Admin login username |
ADMIN_PASSWORD |
Yes | Admin login password |
EMAIL_USER |
No | Gmail address for notifications |
EMAIL_PASS |
No | Gmail App Password |
FRONTEND_URL |
No | Frontend URL for CORS |