This project is a full-stack social networking web application that allows users to connect and interact in real time. The platform enables users to create personal profiles, share posts, react and comment on content, and manage friendships through a friend request system.
The application also includes a real-time chat feature that allows users to communicate instantly with their friends using WebSocket technology.
Authentication and security are implemented using JWT tokens and bcrypt for password hashing. The backend is built using Node.js and Express, while MongoDB is used to manage and store user and social data. To improve performance, Redis is used for caching frequently accessed data.
Additionally, Socket.IO powers the real-time messaging system, and Bull Queue is used to handle background jobs such as message processing and notifications.
The frontend is developed using React with Bootstrap to create a responsive and user-friendly interface.