You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.8 KiB

  1. Mastodon
  2. ========
  3. Mastodon is a federated microblogging engine. An alternative implementation of the GNU Social project. Based on ActivityStreams, Webfinger, PubsubHubbub and Salmon.
  4. **Current status of the project is early development. Documentation &co will be added later**
  5. ## Status
  6. - GNU Social users can follow Mastodon users
  7. - Mastodon users can follow GNU Social users
  8. - Retweets, favourites, mentions, replies work in both directions
  9. - Public pages for profiles and single statuses
  10. - Sign up, login, forgotten passwords and changing password
  11. - Mentions and URLs converted to links in statuses
  12. - REST API, including home and mention timelines
  13. - OAuth2 provider system for the API
  14. - Upload header image for profile page
  15. Missing:
  16. - Media attachments (photos, videos)
  17. - UI to post, reblog, favourite, follow and unfollow
  18. - Deleting statuses, deletion propagation
  19. - Streaming API
  20. ## Configuration
  21. - `LOCAL_DOMAIN` should be the domain/hostname of your instance. This is **absolutely required** as it is used for generating unique IDs for everything federation-related
  22. - `LOCAL_HTTPS` set it to `true` if HTTPS works on your website. This is used to generate canonical URLs, which is also important when generating and parsing federation-related IDs
  23. - `HUB_URL` should be the URL of the PubsubHubbub service that your instance is going to use. By default it is the open service of Superfeedr
  24. ## Requirements
  25. - PostgreSQL
  26. - Redis
  27. ## Running with Docker and Docker-Compose
  28. The project now includes a Dockerfile and a docker-compose.yml. You need to turn .env.production sample into .env.production with all the variables set before you can:
  29. docker-compose build
  30. And finally
  31. docker-compose up
  32. As usual, the first thing you would need to do would be to run migrations:
  33. docker-compose run web rake db:migrate