Lemmy
Federated link aggregator and forum
Lemmy is a free, open-source, federated link aggregator and discussion platform. It is a fediverse alternative to Reddit, with communities that federate across instances via ActivityPub.
Key features
- Federated communities
- Threaded discussions and voting
- ActivityPub support
- Fast Rust backend
Pros & cons
Strengths
- Reddit-like experience
- Efficient resource use
Trade-offs
- Moderation tooling still maturing
- Fragmented across instances
Lemmy replaces
Last reviewed Aug 26, 2026 · 812 words
The cheapest Lemmy instance to run is one with a single user: you. Federation means your account on your own server can subscribe to every community on every other instance, vote, post, and moderate exactly as if you had signed up elsewhere, and you keep your identity, your data, and your rules. A public instance with open registration is a different animal, and the difference is measured in moderation hours rather than megabytes. Lemmy itself, a Rust backend with 14,567 stars under AGPL-3.0, idles happily in 512 MB; it is the social obligations, not the binary, that scale badly.
Four containers, one hjson file
A working deployment is the Rust backend (lemmy, listening on 8536), the Inferno-based web front end (lemmy-ui, on 1234), Postgres, and pict-rs for image storage and thumbnailing, with a reverse proxy routing browser traffic to the UI and ActivityPub requests (anything with an application/activity+json accept header) to the backend. The official docs publish a docker-compose and an nginx config that already make that split; Lemmy Easy Deploy wraps the same pieces in a script with sane defaults for people who do not want to hand-edit it. Server settings live in lemmy.hjson: the hostname, the database URL, SMTP for email verification, and a pict-rs URL. The hostname is permanent in the ActivityPub sense; changing it later means every remote instance sees you as a new server, so pick the final domain before the first federated request goes out.
Federation is a cache you did not ask for
Once you subscribe to a remote community, every post, comment, vote, and thumbnail in it is copied into your Postgres and pict-rs so your UI can render it locally. Subscribe to 50 busy communities and the database grows by hundreds of megabytes a month; pict-rs caching remote images is the bigger line item and can reach several gigabytes on a year-old instance. Two controls help: pict-rs can be configured to purge cached remote media after a retention window, and Postgres benefits from regular VACUUM and a bump to shared_buffers above the container default. Plan disk at 20 GB minimum with monitoring on it, and put pict-rs on the volume you can grow.
Running for one is legitimate, running for many is a job
A single-user or friends-only instance (registration closed, or set to require an application you approve by hand) keeps the operator's work at the level of updating containers and reading the odd federation error. Open registration turns you into a moderator of everything that lands on your server, including content federated in from elsewhere that your users report. Lemmy's tooling for that has improved (registration applications, captcha, a mod log, per-community moderators, instance-level blocking) but it is still thinner than a decade-old forum platform, and the admin duties include responding to takedown requests for content you did not host originally. If you want a community rather than an account, Discourse or the social category may fit the actual job better.
Defederation and the small-instance experience
Some large instances block small or new servers by default, or block any instance without a visible admin and a posted set of rules. Publish rules on your sidebar and a contact email in lemmy.hjson on day one. Expect the first week to feel empty: communities only appear once someone on your instance subscribes to them, so a new server shows nothing until you go and find things. Threadiverse alternatives such as Mbin federate with Lemmy communities, so choosing Lemmy does not cut you off from the rest.
Updates, backups, and the one thing to never do
Lemmy releases carry database migrations that can take a long time on a large instance and are not always reversible, so dump Postgres before every upgrade and read the release notes for the version you are jumping to. Back up three things: the Postgres dump, the pict-rs data volume, and lemmy.hjson. Never restore a backup onto a server with the same hostname after it has federated newer content than the backup contains; remote instances will reject activities with IDs they have already seen, and the mismatch is painful to unwind. Treat the database as append-mostly and the hostname as a commitment.
What I'd do
Single-user instance on a 2 vCPU, 4 GB VPS with 40 GB of disk, registration closed, pict-rs remote-media retention set to 30 days, nightly Postgres dump, containers updated on a monthly reminder after reading the release notes. That gets you a Reddit replacement that you own outright for about the cost of a coffee a month. Open registration only if you have a co-admin and want the job.
Compare Lemmy
7 head-to-head comparisons.
Similar social networks apps
Mastodon
Social NetworksDecentralized open-source microblogging server
Replaces Twitter, X
Discourse
Social NetworksModern open-source community discussion platform
Replaces phpBB, Reddit
Invidious
Social NetworksAlternative front-end to YouTube
Replaces YouTube
NodeBB
Social NetworksNode.js powered forum with real-time updates
Replaces phpBB, Discourse
Nitter
Social NetworksAlternative front-end for Twitter that respects your privacy
Replaces X
diaspora*
Social NetworksPrivacy-focused decentralized social network
Replaces Facebook, Twitter