Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/creator79/stealth


https://github.com/creator79/stealth

Last synced: about 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# My Chat App
## Available Live at https://stealth-neon.vercel.app/

## Functionalities

***
* This is a Public chat app in which you can connect more than two people in real time.
* You can video call and chat in real time.
* It has basic functionalities like toggle audio and video and leave call.
* You can join meet via your teams or instant meet or using meeting Id.
* It offers screen sharing, raise hand, instant messaging , 2-way authentication, send mail and copy link.
* To inhance the UI i have two different themes - the light mode and the dark mode, video duration, features option for brief description about my webApp, Alerts, feedback collection.
***

## Tech Stack Used

***
* PeerJs
* Socket.io
* MERN stack
* CSS
* Javascript
***

### To run it locally, Install it locally using npm

#### Terminal 1-
```
npm init
npm start
```
#### Terminal 2-
```
cd backend
node server.js
```

### Approach

**My Coding Approach:**

I will follow an iterative and incremental approach, dividing the project into sprints to ensure efficient development and timely delivery of features. Utilizing the MERN stack (MongoDB, Express.js, React.js, Node.js), I will focus on building a robust video conferencing application.

**Sprint 1:**
In the first sprint, my focus will be on establishing the basic functionalities of the application:

- **Connect Two People:** Implement the core functionality to establish a video/audio connection between two users.
- **Toggle Audio/Video:** Provide options to toggle audio and video during the call.
- **Leave Call:** Implement the functionality to end the call gracefully.
- **Copy Link:** Enable users to easily copy the call link to share with others.

**Sprint 2:**
In the second sprint, I will expand the application's capabilities:

- **Connect More Than 2 People:** Enhance the video conferencing feature to support multiple participants. (Dev mode)
- **Authentication:** Implement user authentication to ensure secure access to the application.
- **UI Design:** Focus on designing an intuitive and user-friendly interface for a seamless user experience.
- **Send Mail:** Integrate functionality to send email notifications for various events, such as meeting invitations.

**Sprint 3:**
For the third sprint, I will introduce additional features to enrich the user experience:

- **Chat Box:** Implement a chat box feature to allow users to exchange text messages during the call.
- **Raise Hand:** Integrate a "raise hand" feature to facilitate communication and participation during group calls.
- **Video Duration:** Display the duration of the ongoing video call for better time management.
- **Notification Messages and Error Alerts:** Implement notification messages and error alerts to keep users informed about important events and handle errors gracefully.

**Sprint 4:**
In the fourth sprint, I will focus on enhancing communication and collaboration:

- **Chat Box Messages:** Further develop the chat box functionality to support multimedia messages and file sharing.
- **Team Chat Feature:** Introduce a team chat feature to enable participants to communicate outside of video calls, fostering collaboration and teamwork.

Throughout the development process, I will prioritize regular communication with stakeholders, conduct thorough testing at each stage, and iterate based on feedback to ensure the final product meets the requirements and exceeds expectations.