Comparing #XMPP against #email protocols is too limited. What sets #deltachat apart is *vertical integration* and being driven by UI/UX considerations. Cross-platform Apps and Bots use the Rust core library which connects with #chatmail relays and classic email servers based on a higher level API -- abstracting over SMTP, MIME, #OpenPGP etc. See chatmail.at

#webxdc apps in turn use an even higher level stable API abstracting over email/xmpp/... see webxdc.org/docs/

in reply to Delta Chat

For #Conversations_im I literally developed the UI first. I had a somewhat working UI before I was able to put a single #XMPP message on the wire.

A shared library between different platforms is a good thing. People are trying to do this in XMPP (Snikket SDK, Macaw, Prose) and if I were to start something new for Conversations I'd use something like Kotlin Multiplatform too.

However there is also value in diversity of implementations and the good ideas will prevail concept of XMPP.

This entry was edited (3 months ago)
in reply to Delta Chat

That's a very illuminative post!

In other words, please CMIIW:

#XMPP is an open protocol standard with various independent implementations in many programming languages for most operating systems. Almost not two #Jabber clients use the same library.

Delta Chat, OTOH, is a single vendor software framework based on various open standards. My guess: Independent implementations are possible, but maybe not encouraged, because they would sooner or later diverge too much from the original?

in reply to Debacle

@debacle that's about right! As to servers/relays: there are a lot of well working alternative stacks -- #chatmail core even runs with some #Plan9 mail server stack apart from the many classic email server implementations. Replacing Rust Core is possible but considerable work. Beating its maturity and cross-platform portability would require a serious effort. Not impossible, though. FWIW most other messenger projects (#Signal, #matrix, etc.) are trying to move towards Rust.
in reply to Delta Chat

And here is the typical #Jabber situation: There are at least TWO #Rust #XMPP libraries! 😞

#XMPPrs: xmpp.rs/ (#MPL)

#luz: bunny.garden/luz/ (#AGPL)

Maybe more.

None of them in #Debian yet, i.e. I see a lot of work ahead 😞

This entry was edited (3 months ago)