Alpha Messaging App is a simple full-stack messaging application built with Express.js, MongoDB, and React. It provides users with the ability to sign up, communicate with each other in real-time, and share images.
- Features
- Technologies Used
- Project Structure
- Setup and Installation
- Running the App
- Backend
- Frontend
- Contribution
- License
- Real-time Messaging: Utilizes WebSocket for instant communication.
- Online/Offline Indicator: Shows the online status of users.
- File Sharing: Users can share images with each other.
- Express.js: Web application framework for Node.js.
- MongoDB: A NoSQL database for storing user and message data.
- WebSocket (ws): A library for adding WebSocket support to your Node.js HTTP server.
- React: A JavaScript library for building user interfaces.
- React Router: A library for handling navigation in React applications.
- Axios: A promise-based HTTP client for making API requests.
- WebSocket: A communication protocol providing full-duplex communication channels over a single TCP connection.
backend
: Contains the Express.js server code.frontend
: Houses the React frontend application.
-
Navigate to the
backend
folder:cd backend
-
Install dependencies:
npm install
-
Set up environment variables:
Create a
.env
file in the root of thebackend
folder with the following content:MONGO_URL= JWT_SECRET_KEY= CLIENT_URL=
-
Navigate to the
frontend
folder:cd frontend
-
Install dependencies:
npm install
Run the backend server:
npm run dev
Start the development server:
npm run dev
Open your browser and navigate to http://localhost:3000 to view the app.
Feel free to contribute to the project. If you have ideas for improvements or find any issues, please open an issue or submit a pull request.
This project is licensed under the MIT License.
This app is not deployed yet. I'm planning to enhance the application further by scaling it, updating the UI for a better user experience, implementing advanced data storage solutions, integrating Google authentication, and adding more exciting features.
Check: Alpha Messaging App v2