ActivityPub

14.02.2022

ActivityPub — открытый и децентрализованный протокол социальных сетей, основанный на протоколе ActivityPump Pump.io. Предоставляет API для клиента/сервера для создания, обновления и удаления контента, а также объединённый API для доставки уведомлений и контента с одного сервера на другой.

Статус проекта

ActivityPub является стандартом для Интернета в Группе социальных сетей Консорциума Всемирной паутины (W3C). На более раннем этапе протокол назывался "ActivityPump", но считалось, что ActivityPub лучше отражает цель перекрестной публикации протокола. Этому научились из опыта работы со старым стандартом под названием OStatus.

В январе 2018 года Консорциум Всемирной паутины (W3C) опубликовал стандарт ActivityPub в качестве Рекомендации.

Бывший руководитель сообщества Diaspora Шон Тилли написал статью, в которой предложил использовать протоколы ActivityPub в качестве способа объединения интернет-платформ.

Значимые реализации

Объединённый (сервер-сервер) сервер

  • Mastodon, открытое программное обеспечение для социальных сетей с внедрённым ActivityPub (добавлено в версии 1.6), выпущенное 10 сентября 2017 года. Предполагается, что ActivityPub обеспечивает большую безопасность для личных сообщений, чем предыдущий протокол OStatus.
  • Pleroma, открытое программное обеспечение для социальных сетей с внедрённым ActivityPub.
  • Misskey, открытое программное обеспечение для социальных сетей с внедрённым ActivityPub.
  • Hubzilla, совместная программная платформа CMS, использующая Zot, добавила поддержку ActivityPub в версии 2.8 (октябрь 2017) с плагином.
  • Nextcloud, федеративный сервис для хранения файлов.
  • PeerTube, федеративный сервис для стриминга видео.
  • Pixelfed, федеративный сервис для обмена фотографиями.
  • Friendica, открытое программное обеспечение для социальных сетей с внедрённым ActivityPub (добавлено в версии 2019.01).
  • Osada, открытое программное обеспечение для социальных сетей с внедрённым Zot и ActivityPub.

Протокол клиент-сервер

Клиентская реализация

Следующие решения являются понятными клиентскими реализациями ActivityPub:

  • dokieli, редактор с клиентской стороны с помощью WebAnnotation и ActivityPub.
  • go-fed, библиотека, реализующая ActivityStreams и ActivityPub на языке Go.

Серверная реализация

Следующие решения являются понятными серверными реализациями ActivityPub:

  • microblog.pub, однопользовательская микроблоговая реализация для базового сервера ActivityPub, находящийся в стадии разработки.
  • distbin, распределённый сервис хранения отрывков текста, реализующий ActivityPub.