Hackathon team formation webapp. Features a real-time chat and swipe feature to find potential teammates.
Contributions welcome!
- React and React Router for frontend
- Express and Node for the backend
- MongoDB for the database
- Mongoose, an ODM to represent our mongodb based on our defined schema.
- Socket.IO to enable realtime chat between users
- Redis to allow multiple instances of the chat server to talk to each other, ensuring chat doesn't break when we deploy to prod.
- Redis
- Mongodb
- Mongodb Compass to easily view and manipulate your local database
Utilize the .env.example file, and create two .env's one in your client directory, the other in your default-service directory. Remember that the client version must be called .env.local. Ask Adi/Pranay for the AWS credentials.
You need to also install redis and mongo and start them as a service. On MacOS this is done with brew services and on Linux it is done with systemctl.
cd default-service
# Install dependencies for server & client
npm install && npm run client-install
# Run client & api server & chat server with concurrently
npm run dev
The api server runs on http://localhost:5002, the chat server runs on http://localhost:5003, and client on http://localhost:3000.
# Connect to the redis instance
redis-cli
# Listen into any socket.io messages flowing through the redis instance.
PSUBSCRIBE socket.io*