matrix-js-sdk
nheko
Our great sponsors
matrix-js-sdk | nheko | |
---|---|---|
7 | 18 | |
1,452 | 1,766 | |
3.4% | 2.9% | |
9.8 | 9.6 | |
5 days ago | 3 days ago | |
TypeScript | C++ | |
Apache License 2.0 | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
matrix-js-sdk
-
Show HN: Mutable.ai – Turn your codebase into a Wiki
I'd quite like some more high level documentation for the Matrix JS SDK (https://github.com/matrix-org/matrix-js-sdk). I've been looking at it for quite some time and still don't understand how timelines work.
- Element (Matrix) adds video/voice rooms
-
Native Matrix VoIP with Element Call
Currently we don't force TURN, so in practice this means that voice packets go direct between the clients if possible, and so the IP addresses of the clients are necessarily exposed to each other.
However, this is utterly trivial to fix: matrix-js-sdk already exposes https://github.com/matrix-org/matrix-js-sdk/blob/96ba061732b... and we simply haven't exposed it as a setting in Element Call yet. I've filed a bug for it at https://github.com/vector-im/element-call/issues/251 - thanks for bringing it up!
In terms of moderation: this is no different to moderation in Matrix as a whole, where we're already busy working on shared greylists (MSC2313 and friends) - https://matrix.org/blog/2020/10/19/combating-abuse-in-matrix... has more details at the end.
-
Introducing Native Matrix VoIP with Element Call!
We expect to turn it on in the next few weeks - the problem we were debugging that we meant it was turned off looks to be fixed. https://github.com/matrix-org/matrix-js-sdk/pull/2002 is the PR that will need to merge to enable it ftr.
-
Mistakes to Avoid Before Submitting Your Pull Request
Unlike any open source projects to which I've contributed, this project involves 2 other repos, matrix-react-sdk and matrix-js-sdk. As explained in the Development guide in the element-web repo, I need those 2 SDKs in order to build Element successfully for code contribution.
nheko
- Shutting down the letsblock.it project and its official instance
-
PSA: security vulnerability in qBitorrent 4.5.x webUI
Look at this, notice anything different? https://github.com/Nheko-Reborn/nheko/issues/new/choose
-
This Year in Matrix
Nheko has been around for a number of years. Never used it myself though.
https://github.com/Nheko-Reborn/nheko
-
Matrix was worth the effort to self host.
Matrix clients hit different than pretty much any other chat client I've use before. Theres multiple clients I've found like nheko, moments, element that are a pleasure to look at and smooth as hell. Even better you can have users use web services like Element Web to sign-up and chat. Its sick.
-
What flatpaks are "official" (i.e., directly from the application's developer)?
The Nheko flatpak is official. Just compare the source to the nightlies we build and upload to our nightly repo.
-
GTK4 Matrix Client
Like almost every client out there it has no support for e2ee. I was happy to find https://nheko-reborn.github.io (I'm a KDE user so Qt apps are preferred).
- Mozilla Thunderbird Beta now supports Matrix chat
-
weed rule
There's also FluffyChat or Nheko if Element is too heavy.
-
Using Files with Browsers, in Reality
I probably wouldn't have guessed that `e.dataTransfer.items` gets cleared at the first await (since I'm not a proficient web developer), but I would've been extremely wary of this code in general. Additionally (not tied to async-await but race conditions in general), is `item.getAsFileSystemHandle()` a TOCTTOU vulnerability where the type of an item can change between folders and files and symlinks etc., while this code is running?
Rust's & vs. &mut system largely eliminates shared state hazards in both threading and asynchronity (&mut is exclusive/unaliased and can't be mutated by other threads or event loop jobs, and & is difficult and unidiomatic to mutate), though it doesn't solve async cancellation errors (https://carllerche.com/2021/06/17/six-ways-to-make-async-rus..., discussed at https://news.ycombinator.com/item?id=27542504), or filesystem TOCTTOU (https://blog.rust-lang.org/2022/01/20/cve-2022-21658.html as well as user code).
Qt event loop reentrancy is fun(tm) as well. It looks like a blocking call, but spawns a nested event loop which can do anything (but rarely enough to lull you into a false sense of complacency), resulting in segfaults like https://github.com/Nheko-Reborn/nheko/issues/656 (workaround at https://github.com/Nheko-Reborn/nheko/commit/570d00b000bd558..., I didn't look into it). And Qt lacks "easy" await syntax and a framework based on calling red functions (though I didn't look into C++20 coroutines yet, perhaps https://www.qt.io/blog/asynchronous-apis-in-qt-6 or https://github.com/mhogomchungu/tasks or https://blog.blackquill.cc/asynchronous-qtquick-uis-and-thei...?).
- Introducing Native Matrix VoIP with Element Call!
What are some alternatives?
matrix-react-sdk - Matrix SDK for React Javascript
gomuks - A terminal based Matrix client written in Go.
matrix-bot-sdk - TypeScript/JavaScript SDK for Matrix bots
axolotl - A Signal compatible cross plattform client written in Go, Rust and Vuejs
rnnoise-wasm - rnnoise noise suppression library as a WASM module
Signal-Android - Patches to Signal for Android removing dependencies on closed-source Google Mobile Services and Firebase libraries. In branches whose names include "-FOSS". Uses new "foss" or "gms" flavor dimension: build with "./gradlew assemblePlayFossProdRelease".
element-call - Group calls powered by Matrix
weechat-matrix - Weechat Matrix protocol script written in python
matrix-appservice - Wechaty [Matrix] Application Services Bridge
telegram-bot-api - Telegram Bot API server
element-desktop - A glossy Matrix collaboration client for desktop.
org.signal.Signal