gitmyhub

lemmy

Rust ★ 14k updated 4d ago

🐀 A decentralised discussion platform for communities.

Open-source, self-hostable Reddit alternative where independently run servers automatically share communities and posts with each other using the ActivityPub protocol.

RustDockerAnsibleActivityPubsetup: hardcomplexity 4/5

Lemmy is an open-source discussion platform similar in concept to Reddit or Hacker News: users subscribe to topic-based communities, share links and posts, vote on content, and leave comments. The key difference from those sites is that Lemmy is decentralized. Instead of one company running a single platform, anyone can run their own Lemmy server. All these independently operated servers communicate with each other using a standard called ActivityPub, the same protocol used by other federated services in what is collectively called the Fediverse. Think of it like email: you can have an account on one provider and still send messages to people on completely different providers.

In practice, this means a person with an account on one Lemmy server can browse, join, and post in communities hosted on any other Lemmy server. Communities are not locked to the server where they were created. Each server operator sets their own rules and moderation policies. Site-wide admins manage the whole server, while community moderators handle individual communities. Moderators can pin posts, remove content, ban users from their community, and keep public logs of their moderation actions.

The server software is written in Rust, a programming language known for performance and reliability. The interface is designed to be clean and mobile-friendly, and requires only a username and password to sign up. Features include live-updating comment threads, image uploads in posts and comments, private messaging, RSS feeds for various content streams, user and community tagging, emoji support, theming options, and internationalization for users in different languages. There is also a cross-posting feature that shows similar posts when you create something new, which helps avoid duplicates in question-and-answer communities.

Lemmy carries no advertising, no venture capital involvement, and no monetization built in. Development is funded through direct donations and has received grants from the NLnet Foundation. The software can be self-hosted using Docker or Ansible, and runs on standard servers as well as lower-powered hardware like a Raspberry Pi.

Where it fits