Self-hosted apps built with Svelte

17 open-source, self-hostable apps written primarily in Svelte.

Last reviewed Oct 11, 2026 · 578 words

Svelte is a frontend framework, so "built with Svelte" tells you about the screen, not the server. Every app in this bucket has a Svelte interface, and behind it is one of three things: nothing (a static bundle that runs in the browser), a backend written in another language, or another app's API. That split predicts the deployment far better than the language label does, so sort the 17 catalogued apps that way before you pick one.

What Svelte means for the person running it

Svelte compiles components to small, plain JavaScript at build time, so the frontend part of these apps is cheap: a few megabytes of static files served by any web server or by the app's own process. Nearly every entry ships as a Docker image, and the directory's RAM estimates for the purely browser-side ones are as low as 128 MB.

Everything else (memory, upgrades, database migrations) depends on the backend you cannot see from the language tag. Patching the UI is easy if you know any modern JavaScript; Svelte components read like HTML with a little script. Patching behaviour usually means the backend, which is a different codebase and sometimes a different language.

Three kinds of Svelte app

KindExamplesWhat you run
Static, browser-sidettu Ebook Reader, Headscale-AdminA static web server; data lives in the browser or another app
Front end for another serverHA-Fusion, PhotonA UI that talks to Home Assistant or a Lemmy instance
Full app with its own backendMathesar, AdventureLog, Servas, CryptgeonA container plus whatever database the backend needs

The static ones are the lightest things you can self-host. ttu Ebook Reader keeps books and progress in the browser with no database. Headscale-Admin is a web UI for Headscale, handy because Headscale itself has no first-party admin interface, and the directory rates it Easy at 128 MB.

The front-end group depends entirely on its partner. HA-Fusion is a fast custom dashboard for Home Assistant, and Photon is an alternative web client for Lemmy instances.

The full apps are where the label misleads most. Mathesar (about 5,100 stars) is a spreadsheet-like interface for PostgreSQL, with a Python backend. AdventureLog (about 3,800 stars), a travel tracker, also pairs its Svelte UI with a Python backend. Servas, per its own catalogue description, is built with Laravel and Livewire, which makes it a PHP app in practice. Cryptgeon (about 1,500 stars) encrypts notes in the browser and destroys them after reading, with no persistent database.

Which Svelte apps should you avoid?

Serge, the most-starred app here at about 5,700, is archived and needed an 8 GB RAM estimate to run local models; use a maintained chat UI instead. Tesseract, a Lemmy front end, is also archived. Cloudflare Tunnel and Nutstash Wallet are one-click app-store packages rather than standalone projects you would deploy on their own.

What I'd do

Pick by backend, not by framework. If you run Headscale, add Headscale-Admin now; it costs almost nothing. For a team that lives in Postgres, Mathesar is the most substantial app in the bucket. For a quick, safe win, Cryptgeon covers one-time secret sharing in 128 MB. For the backend languages hiding behind these UIs, the Python page is the better guide to day-to-day operation.