BAATचीत is a cross-platform chat application built using React Native for the frontend, Node.js and Express.js for the backend, and MongoDB for data storage. The application provides a seamless chatting experience with features such as text messaging, emojis, and image sharing. It also includes a home page, chat page, and a friend request page for a comprehensive social experience.
-
Frontend:
- React Native
- Socket.IO client
-
Backend:
- Node.js
- Express.js
- MongoDB
- Socket.IO
-
Authentication:
- Jwt authentication
- Bcrypt for password hashing
-
Image Upload:
- Cloudinary
-
Home Page:
- Displays a list of all users.
- Allows logged-in users to send friend requests.
-
Chat Page:
- Displays list of all friends with the last message.
- Enables users to chat with friends via text, emojis, and images.
- Implements Socket.IO for seamless real-time messaging, eliminating the need for constant page refreshing.
-
Request Received Page:
- Displays friend requests received by the user.
- Provides the option to accept friend requests.
The app comes with a custom icon designed to enhance the overall user experience.
VARIABLE | Sample value |
---|---|
JWT_KEY | sample_key |
MONGO_URL | mongodb://localhost/BAATचीत |
PORT | 8080 |
CLOUD_NAME | your_cloudinary_cloud_name |
API_KEY | your_cloudinary_api_key |
API_SECRET_KEY | your_cloudinary_api_secret_key |
-
Clone the repository:
git clone https://github.com/Mitushi-23/BAAT-CHEET.git
-
Install dependencies:
npm i
-
Run backend:
cd api/ npm start
-
Run frontend:
expo start