Wire[1], another E2EE chat application (using libsignal, just like WhatsApp and Signal itself), does not require this. It also has open-sourced its client and server applications[2], and is in the process of documenting how to run them yourself.
It also has a pretty solid API[3].
One downside for JS haters, though, is that while the application isn't a wrapper for the site it is still Electron.
In Matrix, E2EE isn't enabled by default[1], and the option to enable it is in fact marked with a warning that it comes with potentially unwanted side-effects. This isn't the same, and the arguments that call recommending Telegram for E2EE encryption disingenuous apply to Matrix/Riot recommendations too.
One other issue I have with Matrix is the fact that they're in the process of completely rewriting their reference implementation in Go despite the fact that - as far as I remember - the first one, in Python, isn't entirely complete[2]. Combined with the app-bridge song and dance[3] there's too much in flux for me to recommend in good conscience.
Finally, and perhaps most importantly (speaking as a "regular" user - the type needed to achieve mass adoption), the client is horrendous. This is especially apparent when compared with Wire, but I'd go as far as saying it's apparent even when compared with some IRC clients. At least Signal's UI/UX is passable. Encryption didn't catapult Telegram to 200 million monthly users. A slick UI, a half-decent UX, and some good marketing did.
The difference is that there is no way to even enable encryption on Telegram desktop clients.
Edit: Aside from that, while the Telegram UI is nice, it doesn't even try to compete with the interfaces commonly found in IRC clients (i.e. no bubbles, one or more lines per message, can actually fit more than a handful of messages without scrolling, and so on... see qwebirc).
1) So it’s true that Matrix is still in beta and E2E is not yet on by default on private rooms (but we’re working on it).
2) Synapse (python impl) is however “complete” (for implementing the Matrix 0.3 spec at least, and newer stuff) and has been for several years. We should spell this out better in the README.
The reason for Dendrite (go impl) is to escape the python GIL and switch to a multidb/multiwriter architecture to keep up with the load on massive HSes like matrix.org’s.
3. I have no idea what the “app-bridge” song and dance is that you’re complaining about: bridges are one of the most powerful and fun bits of Matrix. Perhaps you don’t like the config used to provision them? I’m not sure how this impacts normal users.
4. You may need to give more info on why you feel Riot is “horrendous” so we can fix specifics :)
Any ideas if they're planning on doing something about not being able to see conversation history on new devices? That was the limitation that drove me away the last time I tried it out.
As far as I'm aware they consider it to be a feature, and I don't particularly disagree. The rationale is that if somehow someone else manages to add a device to your account (which you get notified about on your other devices), they cannot see your chat history up until the moment the device was linked.
Once they're all linked you don't have this issue again so it's kind of a one-time thing.
But why not let me make that decision? You're assuming
- a) everyone has a phone number
- b) everyone has ONE phone number
- c) everyone has a phone
- d) everyone has ONE phone
- e) said phones have a good battery life, lots of storage, and are always on a fast unlimited internet.
- f) you want to give your phone number to everyone you want to talk to
For some of my chats, I'd want that sure, and the price in those cases is cheap.
For many other cases, no, I'm not willing to pay that price. I'm not willing to keep my phone on and with me all the time and provide it with fast expensive internet, just so I could say hello to some people.
You might say that I can find another service, or that I don't understand the price I'm paying. I did and I do. I'm only debating your claim that the price is cheap and putting it into general perspective.
That's a cheap price to pay for E2EE only.