Skip to content

WebRTC video calling app built with Flutter and TypeScript, NodeJS for the signalling API.

Notifications You must be signed in to change notification settings

efenstakes/video-caller-flutter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 

Repository files navigation

Flutter WebRTC Video Calling App

The code in this repo consists of the components required to build a fully functional webrtc app in flutter.

🚀 TeleDoc

This folder contains the mobile application. It uses the latest version of flutter and socket io for websockets. To install dependencies run:

flutter pub get

To start flutter app run:

flutter run

Or to specify a device to run it on run:

flutter run -d <device>

Where is a device id. You can get it by running:

flutter devices

If you want to reproduce my work to perhaps rebuild your own version, run (to create a new flutter app):

flutter create <app-name>

Signal

This folder contains the server that powers the mobile application. It uses the latest version of typescript, nodejs and socket io for websockets. To install its dependencies run:

yarn install

To start the server run:

yarn dev

Alternatively, you can use docker to run the api.

Build the Docker image:

docker build -t signal .

Start the Docker container:

docker run -p 8080:8080 signal

📝 Todo

While time to work on projects may be limited, I plan to add a few things to this project in the future:

I plan to build a Signal API with AWS Lambda Websockets which would obviously be a cheaper option than running the current API on AWS EC2 or ECS. I plan to push it to git https://github.com/efenstakes/video-call-signalling-api-aws-lambda.

Add a golang pion server, peerjs, or elixir janus to power group calls.

Contact

Contact me through. efenstakes101@gmail.com

About

WebRTC video calling app built with Flutter and TypeScript, NodeJS for the signalling API.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published