Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
M

mastodon

> DevOps
Free

Your self-hosted, globally interconnected microblogging community

50.4K stars0 likes1 views
WebsiteGitHub

About

Your self-hosted, globally interconnected microblogging community

[!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 3.3+
  • PostgreSQL 14+
  • Redis 7.0+
  • Node.js 22+
  • 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 setting up a development environment in the DEVELOPMENT documentation.

If you would like to help with translations 🌐 you can do so on Crowdin.

LICENSE

Copyright (c) 2016-2026 Eugen Rochko (+ mastodon authors)

Licensed under GNU Affero General Public License as stated in the LICENSE:

…

Issues· 4561 open

View all issuesOpen on GitHub
  • #25299

    Dependency Dashboard

    dependenciesUpdated Sep 29, 2026
  • #40735

    Recently created users with updated profiles continue to display blank until manually refreshed

    area/web interfaceUpdated Sep 28, 2026
  • #40732

    Pressing [CTRL+] Enter closes the alt-text modal

    area/web interfaceUpdated Sep 28, 2026
  • #15320

    Feature request: Make it possible to change a username

    Updated Sep 28, 2026
  • #40715

    Export personal notes (private notes), for account migration and other purposes

    Updated Sep 27, 2026
  • #38641

    Add optional Reason field to block dialog

    Updated Sep 27, 2026
  • #40708

    Please Consider to Add "ALTCHA" Captcha Support!

    Updated Sep 27, 2026
  • #40714

    Show or link email domain blocklist state during account signup moderation

    Updated Sep 27, 2026
  • #40713

    Take Geolocation of IP addresses into account for account approval

    Updated Sep 27, 2026
  • #10258

    Indicate when there are more attachments in remote posts

    Updated Sep 26, 2026

> Tags

Rubyactivity-streamactivitypubdocker

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedOct 17, 2026
CategoryDevOps
PricingFree

> Related tools

D
Docker
容器化平台,标准化应用交付
G
GitHub Actions
GitHub 原生 CI/CD 工作流
N
Nginx
高性能 Web 服务器与反向代理