* Revert "Bump version to 1.4.4" This reverts commit 1585b0c6cce6cebda3fdc8ba944aa2247e76d1be. * Revert "Fix conversations (fixes #3869) (#3870)" This reverts commit 15b43f555dcb06742c677d84c25d05774ef1bde2. * Revert "Fix streaming server. Redis connection subscribe for each channel. (#3828)" This reverts commit d8ec83280637e53ded67d4938a198cbeb9e8db05. * Revert "Filter direct statuses in Status.as_home_timeline (#3842)" This reverts commit bab5a18232a163b0c3c6a245f7f95d50d7022b36. * Revert "Fix RemoteFollow behavior (#3868)" This reverts commit a20cf3b64e93d764f1dfe88ecdb39f3fd4eefe03. * Revert "Update fabricator for MediaAttachment to attach a file according to type (#3862)" This reverts commit 356df7ae6b6edfc600fbc532f32fbc46314e00a0. * Revert "Upgrade React Router (#3677)" This reverts commit 8f03fdce7fa16fcaa829a40f395cefc85eb957d5. * Revert "Do not call setState from unmounted component (#3853)" This reverts commit 1fc6cb499742c1a872ad717a689c58a80aeb714d. * Revert "Replace TextIconButton for SensitiveButton to IconButton (#3759)" This reverts commit eb832e88f44d661a504a091defc051e052eb1252. * Revert "Fix RTL detection on Ruby side (#3867)" This reverts commit b16b69350eb4ded2e1011931433b51dac5e34b53. * Revert "i18n: Fixed typo in Polish translation (#3864)" This reverts commit da6fa029f66d50f38f2b6c85687994793f7766aa. * Revert "Don't attach IntersectionObserver for wrapped statuses (#3863)" This reverts commit 94ad0706f514e25c58c0a8f3201f96c1d1ccbbd8.
Mastodon
Mastodon is a free, open-source social network server. A decentralized solution to commercial platforms, it avoids the risks of a single company monopolizing your communication. Anyone can run Mastodon and participate in the social network seamlessly.
An alternative implementation of the GNU social project. Based on ActivityStreams, Webfinger, PubsubHubbub and Salmon.
Click on the screenshot to watch a demo of the UI:
The project focus is a clean REST API and a good user interface. Ruby on Rails is used for the back-end, while React.js and Redux are used for the dynamic front-end. A static front-end for public resources (profiles and statuses) is also provided.
If you would like, you can support the development of this project on Patreon. Alternatively, you can donate to this BTC address: 17j2g7vpgHhLuXhN4bueZFCvdxxieyRVWd
Resources
- List of Mastodon instances
- Use this tool to find Twitter friends on Mastodon
- API overview
- Frequently Asked Questions
- List of apps
Features
- Fully interoperable with GNU social and any OStatus platform Whatever implements Atom feeds, ActivityStreams, Salmon, PubSubHubbub and Webfinger is part of the network
- Real-time timeline updates See the updates of people you're following appear in real-time in the UI via WebSockets
- Federated thread resolving If someone you follow replies to a user unknown to the server, the server fetches the full thread so you can view it without leaving the UI
- Media attachments like images and WebM Upload and view images and WebM videos attached to the updates
- OAuth2 and a straightforward REST API Mastodon acts as an OAuth2 provider so 3rd party apps can use the API, which is RESTful and simple
- Background processing for long-running tasks Mastodon tries to be as fast and responsive as possible, so all long-running tasks that can be delegated to background processing, are
- Deployable via Docker You don't need to mess with dependencies and configuration if you want to try Mastodon, if you have Docker and Docker Compose the deployment is extremely easy
Development
Please follow the development guide from the documentation repository.
Deployment
There are guides in the documentation repository for deploying on various platforms.
Contributing
You can open issues for bugs you've found or features you think are missing. You can also submit pull requests to this repository. Here are the guidelines for code contributions
IRC channel: #mastodon on irc.freenode.net