This is a real-time chat application that allows users to register, create chat rooms, and communicate with others in real-time. It features user authentication, profile customization, online status indication, and more.
- Frontend: React and TailwindCSS
- Authentication: Firebase
- Backend: Node/Express for creating API endpoints
- Database: MongoDB for storing chat room members and their messages
- Real-time Communication: Socket.io
- User Registration/Login: Users can register and log in using their email and password.
- Profile Page: Users can update their avatar and display name.
- Random Avatar Generation: Avatars can be generated using the DiceBear API.
- Chat Rooms: Users can create rooms to chat with others.
- Online Status: Users can see the online status of other members.
- Search Functionality: Users can search for other users or chat rooms.
- Real-time Chat: Messages are sent and received in real-time.
- Emoji Picker: An integrated emoji picker allows users to send emojis.
- Dark Mode: Users can enable dark mode for a better viewing experience.