A real-time dating app with swipe-based matching, instant messaging, and live presence indicators.
- Swipe to Match
- Real-Time Chat
- Typing Indicators
- Read Receipts
- Online Presence
- Match Notifications
- Match Management
- Profile Customisation
- Seed Data
Ember/
├── backend/ Express REST API + Socket.io server
└── frontend/ React SPA (Vite)
The backend and frontend are independent packages that run as separate processes and communicate over HTTP and WebSocket.
Browser ──HTTP──▶ Express API ──Mongoose──▶ MongoDB
◀───WS─── Socket.io
- Backend: Node.js, Express
- Database: MongoDB
- Frontend: React
- Node.js 18+
cd backend
cp .env.example .env # fill in MONGO_URI, JWT_SECRET, etc.
npm install
npm run dev # http://localhost:5000 cd frontend
npm install
npm run dev # http://localhost:5173 cd backend
npm run seed