#116
B
Rank #198
Joplin
A cross-platform, end-to-end-encrypted note-taking app with an optional self-hosted sync server for keeping devices in sync without a cloud vendor. Standout trait is genuine E2EE support baked into the sync protocol.
60.8
/ 100
β Full Stack
The sync server is a Node.js/Koa app backed by Postgres or SQLite, acting mostly as encrypted-blob storage for clients that do the real note-editing work locally (Electron desktop, mobile, CLI). The bulk of the project's engineering is client-side, not server-side.
π Scaling Analysis
The sync server itself is a thin, largely stateless blob-sync layer, so it scales adequately for personal or small-team use, but it was never built as a high-throughput multi-tenant service β most of the interesting engineering (search, editing, E2EE) lives in the clients, not the server.
π Running on Nexlayer
Deploy the sync server as its own pod with a Postgres pod (`postgres.pod:5432`) for multi-user durability instead of the SQLite default. `APP_BASE_URL` needs to point at the Nexlayer-issued `<% URL %>` so client sync and share links work correctly.