50,502
stars
+1
7,542
forks
713
watchers
25,702
prs
13,339
issues
382
releases
1,949
discussions
README
[!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.2+
- 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 learn about setTop issues
#12423Support Post Migration308 comments · 2019-11-18#8565“Disable replies” feature250 comments · 2018-09-02#20117Rename content warning (CW) to content notice (CN)165 comments · 2022-11-08#34Backfill statuses from remote accounts when first subscribed145 comments · 2016-09-10#139Support groups120 comments · 2016-11-05#6942[FEATURE] Follow public local timelines from other instances108 comments · 2018-03-28#861Add a "Local timeline" privacy option90 comments · 2017-04-04#2668Multi-tenancy with custom domains81 comments · 2017-04-30
Discussions
#41591New self hosted instance doesn't find users from big ones0 comments · 2026-11-08#41583db-1 ... FATAL: role "postgres" does not exist1 comments · 2026-11-08#41521The future of the "Posts and other pages will (...)" column1 comments · 2026-11-05#41373API fetch of remote statuses1 comments · 2026-10-28#41295GitLab's CVE-2026-89078, CVE-2026-93577, CVE-2026-97229 and CVE-2026-1102640 comments · 2026-10-23#41226Is possible to search by type of post ?1 comments · 2026-10-21#41201[UX Feedback] In-app coach-mark tour for first-time users0 comments · 2026-10-20#41168Mangled URLs0 comments · 2026-10-19
Latest release
v4.7.5 v4.7.5 2026-11-03Changelog Security - Fix password authentication bypass for inactive accounts (GHSA-3xjw-gv43-3w62) - Fix DoS through JSON-LD compaction (41482 by @ClearlyClaire, GHSA-cf49-73r7-rxj6) - Fix Forwarded header taking precedence over X-Forwarded-For (41481 by @ClearlyClaire, GHSA-qp4r-p842-mw5c) - If your reverse-proxy setup uses Forwarded instead of X-Forwarded-For, please make sure it ignores user-provided X-Forwarded-For headers. - If you are using our provided nginx.conf, please consider updating it. - Updated dependencies, in particular to address security advisories in addres