mastodon / mastodon
git clone https://github.com/mastodon/mastodon.git
v4.7.3 Β· 21d ago
π₯ on GitHub Trending today
Self-hosted, federated social network server implementing ActivityPub for publishing posts, media, and following users across servers.
Why you might care
Run your own microblogging community that interoperates with the wider Fediverse, including non-Mastodon ActivityPub software. Includes real-time timelines, moderation and privacy tools, and an OAuth2 REST API that third-party apps can build on.
+0
stars, 24h Β· #15,459
+71
stars, 7 days Β· #1,734
+207
stars, 30 days Β· #2,592
50k
β
total Β· +0% this week
7.5k
forks Β· 4.6k open issues
Star history (as recorded here)
LanguageRuby
LicenseAGPL-3.0
Created2016-02-22 (10y ago)
Last pushtoday
Watchers719
OwnerOrganization
Seen on GitHub Trending
- 2026-10-22 β #3 monthly in ruby Β· +208 β
- 2026-10-21 β #3 monthly in ruby Β· +207 β
- 2026-10-21 β #2 weekly in ruby Β· +32 β
- 2026-10-20 β #3 monthly in ruby Β· +203 β
- 2026-10-20 β #1 weekly in ruby Β· +71 β
GitHub topics
Links
- GitHub: github.com/mastodon/mastodon
- Homepage: https://joinmastodon.org
- Releases Β· Issues Β· Hacker News mentions
README excerpt
> [!NOTE] > Want to learn more about Mastodon? > Click below to find out more in a video. Mastodon is a **free, open-source social network server** based on ActivityPub where users can follow friends and discover new ones. On Mastodon, users can publish anything they want: links, pictures, text, and video. All Mastodon servers are interoperable as a federated network (users on one server can seamlessly communicate with users from another one, including non-Mastodon software that implements ActivityPub!) ## Navigation - Project homepage π - Donate to support development π - View sponsors - Blog π° - Documentation π - Official container image π’ ## Features **Part of the Fediverse. Based on open standards, with no vendor lock-in.** - the network goes beyond just Mastodon; anything that implements ActivityPub is part of a broader social network known as the Fediverse. You can follow and interact with users on other servers (including those running different software), and they can follow you back. **Real-time, chronological timeline updates** - updates of people you're following appear in real-time in the UI. **Media attachments** - upload and view images and videos attached to the updates. Videos with no audio track are treated like animated GIFs; normal videos loop continuously. **Safety and moderation tools** - Mastodon includes private posts, locked accounts, phrase filtering, muting, blocking, and many other features, along with a reporting and moderation system. **OAuth2 and a straightforward REST API** - Mastodon acts as an OAuth2 provider, and third party apps can use the REST and Streaming APIs. This results in a rich app ecosystem with a variety of choices! ## Deployment ### Tech stack - Ruby on Rails powers the REST API and other web pages. - PostgreSQL is the main database. - Redis and Sidekiq are used for caching and queueing. - Node.js powers the streaming API. - React.js and Redux are used for the dynamic parts of the interface. - BrowserStack supports testing on real devices and browsers. (This project is tested with BrowserStack) - Chromatic provides visual regression testing. (This project is tested with Chromatic) ### Requirements - **Ruby** 4.0 - **PostgreSQL** 14+ - **Redis** 7.0+ - **Node.js** 24+ - **FFmpeg** 5.1+ This repository includes deployment configurations for **Docker and docker-compose**, as well as for other environments like Heroku and Scalingo. For Helm charts, reference the mastodon/chart repository. A **standalone** installation guide is available in the main documentation. ## Contributing Mastodon is **free, open-source software** licensed under **AGPLv3**. We welcome contributions and help from anyone who wants to improve the project. You should read the overall CONTRIBUTING guide, which covers our development processes. You should also read and understand the CODE OF CONDUCT that enables us to maintain a welcoming and inclusive community. Collaboration begins with mutual respect and understanding. You can lear
Blurb generated by claude-haiku-5-5 1d ago. Star deltas marked ~ are extrapolated from partial history.