HackMate is a platform to help hackathon participants find teammates, share project ideas, and collaborate effectively.
Built with the MERN stack (MongoDB, Express, React, Node.js).
- 🔑 Authentication – Register/Login with JWT & bcrypt
- 👤 User Profiles – Store name, email, skills, tech stack, and bio
- 🤝 Team Management – Create teams, join existing teams, view members
- 💡 Project Ideas – Post hackathon ideas and explore others
- 🌐 Frontend + Backend – React frontend connected to Express API
- 🗄 Database – MongoDB for persistent storage
Frontend:
- React.js
- Axios (API calls)
- TailwindCSS / Material UI (UI components)
Backend:
- Node.js + Express.js
- MongoDB + Mongoose
- JWT Authentication
- bcryptjs (password hashing)
- dotenv, cors, morgan
git clone https://github.com/your-username/hackmate.git
cd hackmate
### 2. Start the Backend API
```bash
npm install
npm startThe API will print the port (e.g., http://localhost:5004). This also serves the legacy static site (index.html).
cd web
npm install
npm run devOpen the printed URL (e.g., http://localhost:5173). If your backend runs on a different port, add query params to point the app to your API/socket server:
These values are saved to localStorage for future sessions.
cd mobile
npm install
npm startFor device testing, set your LAN IP in environment variables (Windows PowerShell):
setx EXPO_PUBLIC_API_BASE http://192.168.1.10:4000
setx EXPO_PUBLIC_CHAT_BASE http://192.168.1.10:5003Restart terminal, then run npm start again.