Skip to content

Commit 542d36f

Browse files
committed
prettier
1 parent ad10b6c commit 542d36f

File tree

2 files changed

+44
-59
lines changed

2 files changed

+44
-59
lines changed

README.md

Lines changed: 30 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
The world's first 🌐 decentralized and 🤝 federated video conferencing solution
1010
powered by **the Matrix protocol**.
1111

12-
1312
## 📌 Overview
1413

1514
**Element Call** is a native Matrix video conferencing application developed by
@@ -26,38 +25,36 @@ with **[LiveKit](https://livekit.io/)** as its backend.
2625
You can find the latest development version continuously deployed to
2726
[call.element.dev](https://call.element.dev/).
2827

29-
> [!NOTE]
28+
> [!NOTE]
3029
> For prior version of the Element Call that relied solely on full-mesh logic,
31-
check [`full-mesh`](https://github.com/element-hq/element-call/tree/full-mesh)
32-
branch.
33-
30+
> check [`full-mesh`](https://github.com/element-hq/element-call/tree/full-mesh)
31+
> branch.
3432
3533
## ✨ Key Features
3634

3735
**Decentralized & Federated** – No central authority; works across Matrix
3836
homeservers.
3937
**End-to-End Encrypted** – Secure and private calls.
40-
**Standalone & Widget Mode** – Use as an independent app or embed in Matrix
38+
**Standalone & Widget Mode** – Use as an independent app or embed in Matrix
4139
clients.
4240
**WebRTC-based** – No additional software required.
43-
**Scalable with LiveKit** – Supports large meetings via SFU
41+
**Scalable with LiveKit** – Supports large meetings via SFU
4442
([MSC4195: MatrixRTC using LiveKit backend](https://github.com/hughns/matrix-spec-proposals/blob/hughns/matrixrtc-livekit/proposals/4195-matrixrtc-livekit.md)).
4543
**Raise Hand** – Participants can signal when they want to speak, helping to
4644
organize the flow of the meeting.
4745
**Emoji Reactions** – Users can react with emojis 👍️ 🎉 👏 🤘, adding
48-
engagement and interactivity to the conversation.
49-
46+
engagement and interactivity to the conversation.
5047

5148
## 🚀 Deployment Options
5249

5350
Element Call can be packaged in two ways:
5451

5552
**Full Package** – Supports both **Standalone** and **Widget** mode. Hosted as
56-
a static web page and accessed via a URL when used as a widget.
53+
a static web page and accessed via a URL when used as a widget.
5754

5855
**Embedded Package** – Designed for **Widget mode** only. Bundled with a
59-
messenger app for seamless integration. This is the recommended method for
60-
embedding Element Call into a messenger app.
56+
messenger app for seamless integration. This is the recommended method for
57+
embedding Element Call into a messenger app.
6158

6259
### Standalone mode
6360

@@ -67,7 +64,6 @@ In Standalone mode Element Call operates as an independent, full-featured video
6764
conferencing web application, allowing users to join or host calls without
6865
requiring a separate Matrix client.
6966

70-
7167
### Widget mode embedded in Messenger Apps
7268

7369
![Element Call in Widget Mode](./docs/element_call_widget.drawio.png)
@@ -82,13 +78,11 @@ and voice calls within Matrix rooms.
8278
> [!IMPORTANT]
8379
> Embedded packaging is recommended for Element Call in widget mode!
8480
85-
8681
## 🛠️ Self-Hosting
8782

8883
For operating and deploying Element Call on your own server, refer to the
8984
[**Self-Hosting Guide**](./docs/self-hosting.md).
9085

91-
9286
## 🧭 MatrixRTC Backend Discovery and Selection
9387

9488
For proper Element Call operation each site deployment needs a MatrixRTC backend
@@ -103,14 +97,16 @@ MatrixRTC backend (according to
10397
[MSC4143](https://github.com/matrix-org/matrix-spec-proposals/pull/4143))
10498
is announced by the homeserver's `.well-known/matrix/client` file and discovered
10599
via the `org.matrix.msc4143.rtc_foci` key, e.g.:
106-
```json
107-
"org.matrix.msc4143.rtc_foci": [
108-
{
109-
"type": "livekit",
110-
"livekit_service_url": "https://someurl.com"
111-
},
112-
]
113-
```
100+
101+
```json
102+
"org.matrix.msc4143.rtc_foci": [
103+
{
104+
"type": "livekit",
105+
"livekit_service_url": "https://someurl.com"
106+
},
107+
]
108+
```
109+
114110
where the format for MatrixRTC using LiveKit backend is defined in
115111
[MSC4195](https://github.com/hughns/matrix-spec-proposals/blob/hughns/matrixrtc-livekit/proposals/4195-matrixrtc-livekit.md).
116112
In the example above Matrix clients do discover a focus of type `livekit` which
@@ -135,15 +131,13 @@ selection for **Matrix rooms 123 and 456**, which include users from different
135131
homeservers.
136132
![Element Call SFU selection over Matrix federation](./docs/SFU_selection.drawio.png)
137133

138-
139134
## 🌍 Translation
140135

141136
If you'd like to help translate Element Call, head over to
142137
[Localazy](https://localazy.com/p/element-call). You're also encouraged to join
143138
the [Element Translators](https://matrix.to/#/#translators:element.io) space to
144139
discuss and coordinate translation efforts.
145140

146-
147141
## 🛠️ Development
148142

149143
### Frontend
@@ -161,10 +155,10 @@ To use it, create a local config by, e.g.,
161155
The `config.devenv.json` config should work with the backend development
162156
environment as outlined in the next section out of box.
163157

164-
> [!NOTE]
158+
> [!NOTE]
165159
> Be aware, that this `config.devenv.json` is exposing a deprecated fallback
166-
LiveKit config key. If the homeserver advertises SFU backend via
167-
`.well-known/matrix/client` this has precedence.
160+
> LiveKit config key. If the homeserver advertises SFU backend via
161+
> `.well-known/matrix/client` this has precedence.
168162
169163
You're now ready to launch the development server:
170164

@@ -199,7 +193,6 @@ yarn backend
199193

200194
<img src="https://codecov.io/github/element-hq/element-call/graphs/tree.svg?token=O6CFVKK6I1"></img>
201195

202-
203196
### Add a new translation key
204197

205198
To add a new translation key you can do these steps:
@@ -220,22 +213,20 @@ To add a new translation key you can do these steps:
220213
1. Update the skeleton entry in the `locales/en/app.json` file with the English
221214
translation:
222215

223-
```jsonc
224-
{
225-
...
226-
"some_new_key": "Some new key",
227-
...
228-
}
229-
```
230-
216+
```jsonc
217+
{
218+
...
219+
"some_new_key": "Some new key",
220+
...
221+
}
222+
```
231223

232224
## 📖 Documentation
233225

234226
Usage and other technical details about the project can be found here:
235227

236228
[**Docs**](./docs/README.md)
237229

238-
239230
## 📝 Copyright & License
240231

241232
Copyright 2021-2025 New Vector Ltd
@@ -253,4 +244,4 @@ have agreed to). Unless required by applicable law or agreed to in writing,
253244
software distributed under the Licenses is distributed on an "AS IS" BASIS,
254245
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
255246
Licenses for the specific language governing permissions and limitations under
256-
the Licenses.
247+
the Licenses.

docs/self-hosting.md

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -12,28 +12,24 @@
1212
The following [MSCs](https://github.com/matrix-org/matrix-spec-proposals) are
1313
required for Element Call to work properly:
1414

15-
-
16-
**[MSC3266](https://github.com/deepbluev7/matrix-doc/blob/room-summaries/proposals/3266-room-summary.md):
17-
Room Summary API**: In Standalone mode Element Call is able to join rooms
18-
over federation using knocking. In this context MSC3266 is required as it
19-
allows to request a room summary of rooms you are not joined. The summary
20-
contains the room join rules. We need that information to decide if the user
21-
gets prompted with the option to knock ("Request to join call"), a "cannot
22-
join error" or "the join view".
23-
24-
-
25-
**[MSC4140](https://github.com/matrix-org/matrix-spec-proposals/blob/toger5/expiring-events-keep-alive/proposals/4140-delayed-events-futures.md)
15+
- **[MSC3266](https://github.com/deepbluev7/matrix-doc/blob/room-summaries/proposals/3266-room-summary.md):
16+
Room Summary API**: In Standalone mode Element Call is able to join rooms
17+
over federation using knocking. In this context MSC3266 is required as it
18+
allows to request a room summary of rooms you are not joined. The summary
19+
contains the room join rules. We need that information to decide if the user
20+
gets prompted with the option to knock ("Request to join call"), a "cannot
21+
join error" or "the join view".
22+
23+
- **[MSC4140](https://github.com/matrix-org/matrix-spec-proposals/blob/toger5/expiring-events-keep-alive/proposals/4140-delayed-events-futures.md)
2624
Delayed Events**: Delayed events are required for proper call participation
2725
signalling. If disabled it is very likely that you end up with stuck calls in
2826
Matrix rooms.
2927

30-
-
31-
**[MSC4222](https://github.com/matrix-org/matrix-spec-proposals/blob/erikj/sync_v2_state_after/proposals/4222-sync-v2-state-after.md)
28+
- **[MSC4222](https://github.com/matrix-org/matrix-spec-proposals/blob/erikj/sync_v2_state_after/proposals/4222-sync-v2-state-after.md)
3229
Adding `state_after` to sync v2**: Allow clients to opt-in to a change of the
3330
sync v2 API that allows them to correctly track the state of the room. This is
3431
required by Element Call to track room state reliably.
3532

36-
3733
If you're using [Synapse](https://github.com/element-hq/synapse/) as your homeserver, you'll need
3834
to additionally add the following config items to `homeserver.yaml` to comply with Element Call:
3935

@@ -69,11 +65,12 @@ As depicted above, Element Call requires a
6965
to implement
7066
[MSC4195: MatrixRTC using LiveKit backend](https://github.com/hughns/matrix-spec-proposals/blob/hughns/matrixrtc-livekit/proposals/4195-matrixrtc-livekit.md).
7167
72-
> [!IMPORTANT]
68+
> [!IMPORTANT]
7369
> As defined in
7470
> [MSC4143](https://github.com/matrix-org/matrix-spec-proposals/pull/4143)
7571
> MatrixRTC backend must be announced to the client via your **homeserver's
7672
> `.well-known/matrix/client`**. The configuration is a list of Foci configs:
73+
7774
```json
7875
"org.matrix.msc4143.rtc_foci": [
7976
{
@@ -91,7 +88,6 @@ to implement
9188
]
9289
```
9390

94-
9591
## Building Element Call
9692

9793
> [!NOTE]
@@ -136,20 +132,18 @@ server {
136132
}
137133
```
138134

139-
140135
## Configuration
141136

142137
There are currently two different config files. `.env` holds variables that are
143138
used at build time, while `public/config.json` holds variables that are used at
144139
runtime. Documentation and default values for `public/config.json` can be found
145140
in [ConfigOptions.ts](src/config/ConfigOptions.ts).
146141

147-
> [!CAUTION]
142+
> [!CAUTION]
148143
> Please note configuring MatrixRTC backend via `config.json` of
149144
> Element Call is only available for developing and debug purposes. Relying on
150145
> it might break Element Call going forward!
151146

152-
153147
## A Note on Standalone Mode of Element Call
154148

155149
Element Call in Standalone mode requires a homeserver with registration enabled
@@ -164,4 +158,4 @@ in the Matrix federated network. The homeserver used can be setup to disable
164158
federation, so as to prevent spam registrations (if you keep registrations open)
165159
and to ensure Element Call continues to work in case any user decides to log in
166160
to their Element Call account using the standard Element app and joins normal
167-
rooms that Element Call cannot handle.
161+
rooms that Element Call cannot handle.

0 commit comments

Comments
 (0)