[mirotalk] - update readme

This commit is contained in:
Miroslav Pejic
2022-04-23 19:01:53 +02:00
parent 202bd94297
commit b26c57e94f
+101 -45
View File
@@ -1,27 +1,21 @@
# MiroTalk P2P
# <p align="center">MiroTalk P2P</p>
[//]: https://img.shields.io/badge/<LABEL>-<MESSAGE>-<COLOR>
<p align="center">Free WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 4k and 60fps, compatible with all browsers and platforms.</p>
[![Author](https://img.shields.io/badge/Author-Miroslav-brightgreen.svg)](https://www.linkedin.com/in/miroslav-pejic-976a07101/)
![License: AGPLv3](https://img.shields.io/badge/License-AGPLv3-blue.svg)
[![Support](https://img.shields.io/badge/Support-PayPal-brightgreen.svg)](https://paypal.me/MiroslavPejic?locale.x=it_IT)
[![Digital Ocean](https://img.shields.io/badge/Tested%20on-DigitalOcean-blue)](https://m.do.co/c/1070207afbb1)
[![Code style: prettier](https://img.shields.io/badge/Code_style-Prettier-ff69b4.svg?)](https://github.com/prettier/prettier)
[![Discord](https://img.shields.io/badge/chat-discord-green)](https://discord.gg/rgGYfeYW3N)
<hr />
Free `WebRTC` browser-based video calls, chat, and screen sharing, using google Stun and [numb](http://numb.viagenie.ca/) Turn. `MiroTalk` provides video quality and latency not available with traditional technology.
<p align="center">
<a href="https://mirotalk.up.railway.app/">
<img src="public/images/mirotalk-header.gif" />
</a>
</p>
Open the app with the following **supported browsers** and many more.
<hr />
[![browsers](public/images/browsers.png)](https://mirotalk.up.railway.app/)
<details>
<summary>Features</summary>
## https://mirotalk.up.railway.app/
<br>
[![mirotalk](public/images/mirotalk-header.gif)](https://mirotalk.up.railway.app/)
## Features
<br/>
- Is `100% Free` - `Open Source` - `Self-hosted`
- No download, plug-in, or login required, entirely browser-based
@@ -47,18 +41,33 @@ Open the app with the following **supported browsers** and many more.
- Direct `peer-to-peer` connection ensures the lowest latency thanks to `WebRTC`
- Supports [REST API](app/api/README.md) (Application Programming Interface)
## Presentation
</details>
https://www.canva.com/design/DAE693uLOIU/view
<details>
<summary>Presentation</summary>
## Demo
<br/>
<a href="https://www.canva.com/design/DAE693uLOIU/view">MiroTalk presentation</a>
</details>
<details>
<summary>Start videoconference</summary>
<br/>
- `Open` https://mirotalk.up.railway.app/newcall or https://mirotalk.herokuapp.com/newcall
- `Pick` your Room name and Join
- `Allow` using the camera and microphone
- `Share` the Room URL and Wait for someone to join for the video conference
## Direct join
</details>
<details>
<summary>Direct Join</summary>
<br/>
- You can also `join` directly to your `room` by going to:
- https://mirotalk.up.railway.app/join?room=test&name=mirotalk&audio=0&video=0&notify=0
@@ -72,7 +81,12 @@ https://www.canva.com/design/DAE693uLOIU/view
| video | boolean | enable / disable |
| notify | boolean | enable / disable |
## Embed a meeting
</details>
<details>
<summary>Embed a meeting</summary>
<br/>
Embedding a meeting into a service or app using an iframe.
@@ -84,7 +98,12 @@ Embedding a meeting into a service or app using an iframe.
></iframe>
```
## Quick start
</details>
<details open>
<summary>Quick start</summary>
<br/>
- You will need to have `Node.js` installed, this project has been tested with Node version [12.X](https://nodejs.org/en/blog/release/v12.22.1/) and [14.X](https://nodejs.org/en/blog/release/v14.17.5/)
@@ -103,9 +122,12 @@ $ npm start
- Open http://localhost:3000 in browser
---
</details>
## Docker
<details open>
<summary>Docker</summary>
<br/>
- Install docker engine: https://docs.docker.com/engine/install/
- Install docker compose: https://docs.docker.com/compose/install/
@@ -123,15 +145,21 @@ $ docker-compose down
- Open http://localhost:3000 in browser
---
</details>
## Setup Turn
<details>
<summary>Setup Turn</summary>
<br/>
`Recommended`, for more info about the Turn check out [here](https://webrtc.org/getting-started/turn-server). Just edit [this part](https://github.com/miroslavpejic85/mirotalk/blob/master/.env.template#L9) on your `.env`.
---
</details>
## API
<details>
<summary>Rest API</summary>
<br/>
```bash
# The response will give you a entrypoint / Room URL for your meeting, where authorization: API_KEY_SECRET.
@@ -144,13 +172,21 @@ $ curl -X POST "https://mirotalk.herokuapp.com/api/v1/meeting" -H "authorization
The API documentation uses [swagger](https://swagger.io/) at http://localhost:3000/api/v1/docs. Or check it out on [railway](https://mirotalk.up.railway.app/api/v1/docs) & [heroku](https://mirotalk.herokuapp.com/api/v1/docs).
---
</details>
## HTTPS
<details>
<summary>Https</summary>
<br/>
If you want `MiroTalk` to be `reachable` from the `outside` of your local network, you can use a service like [ngrok](https://ngrok.com/) (by editing the [Ngrok part](https://github.com/miroslavpejic85/mirotalk/blob/master/.env.template#L1) on `.env` file) or expose it directly on [HTTPS](app/ssl/README.md)
## Live demo
</details>
<details>
<summary>Live Demo</summary>
<br/>
<a target="_blank" href="https://railway.app/new/template/mirotalk?referralCode=mirotalk"><img src="https://railway.app/button.svg" style="width: 220px;"></a>
@@ -168,26 +204,42 @@ https://mirotalk.herokuapp.com/
If you want to deploy a MiroTalk P2P instance on your dedicated server, or for other needs, don't hesitate to contact us at p2p.mirotalk@gmail.com.
---
</details>
## Credits
<details>
<summary>Credits</summary>
<br/>
- ianramzy (html [template](https://cruip.com/demos/neon/))
- vasanthv (webrtc-logic)
- fabric.js (whiteboard)
## Contributing
</details>
<details>
<summary>Contributing</summary>
<br/>
- Contributions are welcome and greatly appreciated!
- Just run before `npm run lint`
## Discussions
</details>
- For discussions about the project, join with us on [Discord](https://discord.gg/rgGYfeYW3N)
<details>
<summary>Discussions and support</summary>
<br/>
## License
- For discussions & help support about the project, join with us on [Discord](https://discord.gg/rgGYfeYW3N)
</details>
<details>
<summary>License</summary>
<br/>
[![AGPLv3](public/images/AGPLv3.png)](LICENSE)
@@ -195,22 +247,26 @@ MiroTalk is free and can be modified and forked. But the conditions of the AGPLv
For a MiroTalk license under conditions other than AGPLv3, please contact us at info.mirotalk@gmail.com.
---
</details>
<br>
<details open>
<summary>Sponsors</summary>
# Sponsors
<br/>
Support this project by [becoming a sponsor](https://github.com/sponsors/miroslavpejic85). Your logo will show up here with a link to your website.
[![BroadcastX](public/sponsors/BroadcastX.png)](https://broadcastx.de/)
---
</details>
<br>
# MiroTalk SFU
<details>
<summary>MiroTalk SFU</summary>
<br/>
Try also [MiroTalk SFU](https://github.com/miroslavpejic85/mirotalksfu), the difference between the two projects you can found [here](https://github.com/miroslavpejic85/mirotalksfu/issues/14#issuecomment-932701999).
---
</details>