The express ts server for the OpenWChat app.
View Demo
.
Report Bug
.
Request Feature
OpenWChat-server is the backend repository powering the OpenWChat app, a WhatsApp clone developed using Express.js, TypeScript, Socket.IO, and MongoDB. This server facilitates real-time communication, user authentication, and data storage for the OpenWChat application, providing a robust foundation for building a feature-rich and secure messaging platform.
Express.js
: A fast and minimalist web framework for Node.js.TypeScript
: A statically typed superset of JavaScript that enhances code maintainability and scalability.Socket.IO
: Real-time bidirectional event-based communication for enabling instant messaging features.MongoDB
: A NoSQL database for efficient and scalable data storage.Docker
: A platform for developing, shipping, and running applications in containers.
Follow these steps to get a local copy up and running:
- Clone the repository:
git clone https://github.com/OpenWChat/OpenWChat-server.git
Without docker
- Provide environment variables based on the .env.example file.
- Install dependencies:
npm install
- Run the development server:
npm run dev
With docker
- Provide environment variables based on the .env.example file.
- Make sure Docker is installed and running on your system.
- Run the following command to start both the server and RTMP microservice using Docker Compose:
docker-compose up app
We welcome contributions from the community to enhance OpenWChat. If you'd like to contribute, please follow these guidelines:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - State your Changes (
npm run clean
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
- Mahdi EttehadNejad - AI & Backend developer - Mahdi EttehadNejad - Built the server