I developed Proxion Messenger: End-to-end encrypted messenger built on the Solid Protocol - your
messages live in your own pod. Rooms, DMs, WebRTC voice, federation,
multi-device. Windows/macOS/Linux + PWA.
So, HTTPS and E2E defend different threats. HTTPS terminates at the server, so the operator sees plaintext; in federation your message also transits your contact’s gateway, which you don’t run. The Double Ratchet layer means no gateway in the path can read content. Pod data is deliberately not encrypted because that the interop choice: typed RDF any Solid app can read, protected at rest by owner-only access control. Your pod host can read what’s stored there, which is why rooms store openly but DMs stay E2E and pod-archival is opt-in and off by default.
Identity permanence and server replacement: We have 3 different things here: identity (and Ed25519 key → did:key, no server dependency), data (your pod, independent of the gateway), and the gateway (replaceable transport). Restore the key backup on a new gateway, point it at the same pod, same person same history. Caveat: the Connect ID bundles {did, gateway_url} but you re-share the address if the gateway moves.
3. Non-CSS servers: 2 paths with different constraints. The browswer/web-app path` is standard Solid-OIDC and works with any compliant server (CSS, solidcommunity.net, PodSpaces), and the gateway auto-detects WAC vs. ACP when writing access control. The server-side headless path needs client credentials + DPoP, which is CSS-specific. NSS doesn't support it.
4. Desktop + web simultaneously: yes, two ways: same-gateway (the gateway keeps a set of sockets per identity and fans out to all) or cross-gateway secondary device via a signed device-cert delegation (the account key never leaves the primary, so each device has its own keypair).
P.S. Sorry about the run-on markdown code formatting. I don't know how to make it stop since backticks didn't constrain it.
I have a toddler, so I'm super tired and sleep deprived and shamelessly use claude code to work on this project. I don't feel any shame about this whatsoever, since I would never have the energy to build this in a reasonable amount of time without assistance. I'm willing to incorporate any critiques and/or feedback from the community. Thanks for reading this!
Thanks for creating Proxion, it sounds promising to me.
I’m currently stuck here on a fresh install. When I click Sign In nothing happens.
It would be great if there was a way to access proxion in the browser, it’s my preferred way of using apps.