It has been observed that people with different needs (work, social, school, etc.) seek different solutions to meet the increasing need for online meetings. Web3RTC is a video chat application built on completely decentralized technologies. It aims to establish connections between users without the need for any central server to store data or transmit media resources.
Web3RTC uses peer connections for both storing and transmitting operations:
Store Operations
Authentication processes (register - login), creating and retrieving room data (participant list, chat messages etc.), storing and retrieving past meetings information, storing past meeting records, allowing to make changes for user preferences.
Transmitting Media Source Operations
Establishing connection between peers in the rooms with both voice (source: microphone) and video (source: camera, screen share) sources.
Web app can be found on the https://web3rtc.com/
- Features
- Requirements
- Installation
- Usage
- Contributing
- License
- IPFS will be used for all data management process
- Authentication process will be added as Login and Register cases with OrbitDB.
- Ability to Create a room
- Ability to Join a room
- Ability to Chat with others in the room
- Ability to Share voice and camera source
- Ability to Change media sources
- Ability to Add other users to the contact list
- Ability to List Past Meetings
- Ability to List Contact List
- Ability to Manage App Settings, are common dashboard usages for all apps.
- Upload recorded meeting to Web3Storage
- Sing-in option with Metamask
- Node.js (version 14 or higher)
- NPM (version 6 or higher)
- Clone this repository
- Install dependencies:
yarn install
- Start the app:
yarn start - Open your browser and navigate to http://localhost:3000
- Register an account and login with the registered account
- Create a Room or Join a Room
- Start communicating with others instantly!
Contributions are welcome and appreciated. To contribute, please follow these steps:
- Fork the repository
- Create a new branch:
git checkout -b feature-branch - Make your changes and commit them:
this commit -m "Add new feature" - Push to the branch
git push origin feature-branch - Create a pull request
This project is licensed under the GNU General Public License v3.0 License. See the LICENSE file for more details.