Ges'Chat is the next generation of video calling applications with gesture control to bridge the cap between school, office and home environments. It allows you to send messages, host video conferences and control your call experience with fluid hand gestures.
- One to One and Room Group Messaging
- Instant text messaging
- Voice note sharing
- Images preview and sharing
- Read receipts
- User typing and online status
- Instant user and room search by name
- Video conferencing
- One to One and group calls
- In Meet messaging
- Screen Sharing
- Gesture Control (X-factor / Flagship)
- Physically raise hand (palm) in front of camera to raise in-meet hand.
- Victory/Peace sign to lower hand
- Thumbs up to switch the camera on.
- Thumbs down to switch the camera off.
- Offensive Text Detection
- Flags and prompts in case of offensive text messages to help create a safer in-app environment.
- Prompts both in both in-meet and outside-meet chats.
- PWA
- Download and add to homescreen/desktop for ease of access.
- Smooth installation, native-like behaviour and access to device hardware.
- Push notifications with sound.
- Authentication
-
Front End / Client Side
- ReactJS
- TensorFlowJS - Gesture Detection
- React Context API - App state management
-
BackEnd Server:
- For search
- Algolia search - data indexing
- Heroku NodeJs environment - deployment.
- For video calling
- Jitsi SDK - Layer over webRTC
- AWS EC2 instance for Jitsi SDK server deployment
- For search
-
Data Management (Databases):
- Firebase Firestore - Data management and messaging
- Firebase Realtime-db - Online status and typing state management
- Setup a firebase project and then navigate to
src/firebase
and put yourfirebase config
object there. - Then go to your project settings in firebase then get a service account file from there and go put it on
backend
folder. - Intiliaze and configure your firestore and realtimedb databases and set
databaseUrl
inbackend/index.js
as your realtimedb link. - Then setup an algolia search project then put your keys in
backend/index.js
andsrc/Sidebar.js
.
- Run
npm install
in the root directory to install all necassary dependencies. - Navigate to the
backend folder
and again, runnpm install
.
- In the root directory, run
npm run start
to start the react app server. - Navigate to the
backend folder
andnode index.js
to start the backend server.