mirror of
https://codeberg.org/fediverse/delightful-activitypub-development.git
synced 2024-11-21 21:30:59 +00:00
Merge pull request 'split commonspub into the library and the framework' (#2) from mayel/delightful-activitypub-development:mayel-patch-1 into main
Reviewed-on: https://codeberg.org/fediverse/delightful-activitypub-development/pulls/2
This commit is contained in:
commit
5c45a19bc6
1 changed files with 30 additions and 25 deletions
55
README.md
55
README.md
|
@ -10,6 +10,7 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
## Contents
|
## Contents
|
||||||
|
|
||||||
- [Developer tools](#developer-tools)
|
- [Developer tools](#developer-tools)
|
||||||
|
- [Frameworks](#frameworks)
|
||||||
- [Libraries](#libraries)
|
- [Libraries](#libraries)
|
||||||
- [Plugins](#plugins)
|
- [Plugins](#plugins)
|
||||||
- [Relays](#relays)
|
- [Relays](#relays)
|
||||||
|
@ -41,12 +42,18 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
|
|
||||||
## Developer tools
|
## Developer tools
|
||||||
|
|
||||||
#### Libraries
|
### Frameworks
|
||||||
|
|
||||||
|
* :heavy_check_mark: [**Bonfire**](https://bonfirenetworks.org): An extensible framework with a big focus on customisation and flexibility. Can be used to build new federated apps while focusing on a specific use case rather than reimplementing lots of boilerplate `AGPL-3.0, Elixir`
|
||||||
|
|
||||||
|
### Libraries
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityPhp**](https://github.com/landrok/activitypub) ([site](https://landrok.github.io/activitypub), [Fedi account](https://cybre.space/@landrok)): A PHP implementation of ActivityPub protocol based upon the ActivityStreams 2.0 data format. `MIT, PHP`
|
* :heavy_check_mark: [**ActivityPhp**](https://github.com/landrok/activitypub) ([site](https://landrok.github.io/activitypub), [Fedi account](https://cybre.space/@landrok)): A PHP implementation of ActivityPub protocol based upon the ActivityStreams 2.0 data format. `MIT, PHP`
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityPods**](https://github.com/assemblee-virtuelle/activitypods): Adding intelligence to Solid PODs with ActivityPub (based on [SemApps](https://semapps.org). `Apache-2.0, Javascript`
|
* :heavy_check_mark: [**ActivityPods**](https://github.com/assemblee-virtuelle/activitypods): Adding intelligence to Solid PODs with ActivityPub (based on [SemApps](https://semapps.org). `Apache-2.0, Javascript`
|
||||||
|
|
||||||
|
* :heavy_check_mark: [**ActivityPub**]https://github.com/bonfire-networks/activity_pub): Generic library to federate an app with ActivityPub (uses a queue for incoming/outgoing activities and adapter modules for tight integration). `AGPL-3.0, Elixir`
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityPub Express**](https://github.com/immers-space/activitypub-express): Modular ActivityPub implementation as Express.js middleware to easily add decentralization and federation to Node apps `-, Javascript`
|
* :heavy_check_mark: [**ActivityPub Express**](https://github.com/immers-space/activitypub-express): Modular ActivityPub implementation as Express.js middleware to easily add decentralization and federation to Node apps `-, Javascript`
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityPub-PHP**](https://github.com/pterotype-project/activitypub-php) ([Fedi account](https://mastodon.technology/@jdormit)): A PHP implementation of the ActivityPub protocol (used in Pterotype plugin). `MIT, PHP`
|
* :heavy_check_mark: [**ActivityPub-PHP**](https://github.com/pterotype-project/activitypub-php) ([Fedi account](https://mastodon.technology/@jdormit)): A PHP implementation of the ActivityPub protocol (used in Pterotype plugin). `MIT, PHP`
|
||||||
|
@ -65,8 +72,6 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
|
|
||||||
* :black_nib: [**Clovis**](https://github.com/WellFactored/clovis): [ARCHIVED] Implementation of ActivityPub in Scala. (Hobby project included here for reference only.) `AGPL-3.0, Scala`
|
* :black_nib: [**Clovis**](https://github.com/WellFactored/clovis): [ARCHIVED] Implementation of ActivityPub in Scala. (Hobby project included here for reference only.) `AGPL-3.0, Scala`
|
||||||
|
|
||||||
* :heavy_check_mark: [**CommonsPub**](https://gitlab.com/CommonsPub) ([site](http://commonspub.org)): Building blocks for creating multifunctional federated networks with ActivityPub. `AGPL-3.0, Elixir`
|
|
||||||
|
|
||||||
* :heavy_check_mark: [**corpus-activity-streams**](https://github.com/ryanatkn/corpus-activity-streams): Activity Streams 2.0 vocabulary data and alternative docs. `Unlicense license, Typescript`
|
* :heavy_check_mark: [**corpus-activity-streams**](https://github.com/ryanatkn/corpus-activity-streams): Activity Streams 2.0 vocabulary data and alternative docs. `Unlicense license, Typescript`
|
||||||
|
|
||||||
* :black_nib: [**dda-masto-embed**](https://github.com/DomainDrivenArchitecture/dda-masto-embed) ([Fedi account](https://social.meissa-gmbh.de/@team)): Embeds mastodon timline into a html page. Uses JS, no intermediate server required. `Apache-2.0, ClojureScript`
|
* :black_nib: [**dda-masto-embed**](https://github.com/DomainDrivenArchitecture/dda-masto-embed) ([Fedi account](https://social.meissa-gmbh.de/@team)): Embeds mastodon timline into a html page. Uses JS, no intermediate server required. `Apache-2.0, ClojureScript`
|
||||||
|
@ -97,7 +102,7 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
|
|
||||||
* :black_nib: [**rdf-pub**](https://gitlab.com/linkedopenactors/rdf-pub) ([site](https://linkedopenactors.gitlab.io/rdf-pub/), [Fedi account](https://chaos.social/@naturzukunft)): An activity-pub server implementation, that is not limited to the activity-stream vocabulary, but supports RDF per se. `EUPL, Java`
|
* :black_nib: [**rdf-pub**](https://gitlab.com/linkedopenactors/rdf-pub) ([site](https://linkedopenactors.gitlab.io/rdf-pub/), [Fedi account](https://chaos.social/@naturzukunft)): An activity-pub server implementation, that is not limited to the activity-stream vocabulary, but supports RDF per se. `EUPL, Java`
|
||||||
|
|
||||||
#### Plugins
|
### Plugins
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityPub for Drupal**](https://github.com/swentel/activitypub) ([Lead dev](https://realize.be/user/1)): ActivityPub integration for Drupal 8 (see also [lite version](https://www.drupal.org/project/activitypub/) at Drupal) `GPL-2.0, PHP`
|
* :heavy_check_mark: [**ActivityPub for Drupal**](https://github.com/swentel/activitypub) ([Lead dev](https://realize.be/user/1)): ActivityPub integration for Drupal 8 (see also [lite version](https://www.drupal.org/project/activitypub/) at Drupal) `GPL-2.0, PHP`
|
||||||
|
|
||||||
|
@ -113,7 +118,7 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
|
|
||||||
* :heavy_check_mark: [**XWiki Extension for ActivityPub**](https://github.com/xwiki-contrib/application-activitypub) ([site](https://extensions.xwiki.org/xwiki/bin/view/Extension/ActivityPub%20Application/), [Fedi account](https://social.weho.st/@XWiki)): An implementation of the ActivityPub protocol for XWiki (see [forum discussion](https://forum.xwiki.org/t/new-application-activitypub/6186)). `LGPL-2.1, Java`
|
* :heavy_check_mark: [**XWiki Extension for ActivityPub**](https://github.com/xwiki-contrib/application-activitypub) ([site](https://extensions.xwiki.org/xwiki/bin/view/Extension/ActivityPub%20Application/), [Fedi account](https://social.weho.st/@XWiki)): An implementation of the ActivityPub protocol for XWiki (see [forum discussion](https://forum.xwiki.org/t/new-application-activitypub/6186)). `LGPL-2.1, Java`
|
||||||
|
|
||||||
#### Relays
|
### Relays
|
||||||
|
|
||||||
* :heavy_check_mark: [**ActivityRelay**](https://git.pleroma.social/pleroma/relay): A generic LitePub relay (works with all LitePub consumers and Mastodon). `AGPL-3.0, Python`
|
* :heavy_check_mark: [**ActivityRelay**](https://git.pleroma.social/pleroma/relay): A generic LitePub relay (works with all LitePub consumers and Mastodon). `AGPL-3.0, Python`
|
||||||
|
|
||||||
|
@ -129,7 +134,7 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
|
||||||
|
|
||||||
For an overview of known relays, see [A sorted list of ActivityPub relays for Mastodon or Pleroma](https://github.com/brodi1/activitypub-relays).
|
For an overview of known relays, see [A sorted list of ActivityPub relays for Mastodon or Pleroma](https://github.com/brodi1/activitypub-relays).
|
||||||
|
|
||||||
#### Bridges
|
### Bridges
|
||||||
|
|
||||||
* :heavy_check_mark: [**BirdSiteLIVE**](https://github.com/NicolasConstant/BirdsiteLive) ([Fedi account](https://fosstodon.org/@BirdsiteLIVE)): An ethical bridge from Twitter `AGPL-3.0, C#`
|
* :heavy_check_mark: [**BirdSiteLIVE**](https://github.com/NicolasConstant/BirdsiteLive) ([Fedi account](https://fosstodon.org/@BirdsiteLIVE)): An ethical bridge from Twitter `AGPL-3.0, C#`
|
||||||
|
|
||||||
|
@ -173,7 +178,7 @@ For an overview of known relays, see [A sorted list of ActivityPub relays for Ma
|
||||||
|
|
||||||
* :heavy_check_mark: **[YouTube2PeerTube](https://github.com/mister-monster/YouTube2PeerTube)**: A bot that mirrors YouTube channels to PeerTube channels as videos are released in a YouTube channel. `AGPL-3.0, Python`
|
* :heavy_check_mark: **[YouTube2PeerTube](https://github.com/mister-monster/YouTube2PeerTube)**: A bot that mirrors YouTube channels to PeerTube channels as videos are released in a YouTube channel. `AGPL-3.0, Python`
|
||||||
|
|
||||||
#### Utilities
|
### Utilities
|
||||||
|
|
||||||
* :black_nib: [**ActivityPubSchema**](https://github.com/redaktor/ActivityPubSchema): JSON Schema definition of the ActivityStreams and ActivityPub specifications. `MIT, Javascript`
|
* :black_nib: [**ActivityPubSchema**](https://github.com/redaktor/ActivityPubSchema): JSON Schema definition of the ActivityStreams and ActivityPub specifications. `MIT, Javascript`
|
||||||
|
|
||||||
|
@ -199,7 +204,7 @@ For an overview of known relays, see [A sorted list of ActivityPub relays for Ma
|
||||||
|
|
||||||
* :heavy_check_mark: [**Moderator Alerts**](https://gitlab.com/stemid/mastodon-moderator-alerts) ([Fedi account](https://mastodon.se/@stemid)): Mastodon moderation alerts using Pushover.net. `-, Python`
|
* :heavy_check_mark: [**Moderator Alerts**](https://gitlab.com/stemid/mastodon-moderator-alerts) ([Fedi account](https://mastodon.se/@stemid)): Mastodon moderation alerts using Pushover.net. `-, Python`
|
||||||
|
|
||||||
#### Testing
|
### Testing
|
||||||
|
|
||||||
* :heavy_check_mark: [**activitypub-mock**](https://gitlab.com/evanp/activitypub-mock): A mock ActivityPub server to use in testing code `Apache-2.0, Javascript`
|
* :heavy_check_mark: [**activitypub-mock**](https://gitlab.com/evanp/activitypub-mock): A mock ActivityPub server to use in testing code `Apache-2.0, Javascript`
|
||||||
|
|
||||||
|
@ -213,23 +218,23 @@ For an overview of known relays, see [A sorted list of ActivityPub relays for Ma
|
||||||
|
|
||||||
This category is for any code project related to the Fediverse. They need not be directly development related.
|
This category is for any code project related to the Fediverse. They need not be directly development related.
|
||||||
|
|
||||||
#### Search
|
### Search
|
||||||
|
|
||||||
* :black_nib: [**Sepia Search**](https://framagit.org/framasoft/peertube/search-index/) ([site](https://sepiasearch.org/)): A search engine of PeerTube videos and channels Developed by Framasoft `AGPL-3.0, Typescript`
|
* :black_nib: [**Sepia Search**](https://framagit.org/framasoft/peertube/search-index/) ([site](https://sepiasearch.org/)): A search engine of PeerTube videos and channels Developed by Framasoft `AGPL-3.0, Typescript`
|
||||||
|
|
||||||
#### Social sharing
|
### Social sharing
|
||||||
|
|
||||||
* :heavy_check_mark: [**Share Buttons**](https://git.fsfe.org/FSFE/share-buttons): Share buttons that support dynamic input of Fediverse URLs and require no Javascript. `AGPL-3,0, PHP`
|
* :heavy_check_mark: [**Share Buttons**](https://git.fsfe.org/FSFE/share-buttons): Share buttons that support dynamic input of Fediverse URLs and require no Javascript. `AGPL-3,0, PHP`
|
||||||
|
|
||||||
* :heavy_check_mark: [**Fedishare**](https://gitlab.com/mugcake/fedishare): Firefox toolbar extension to share the current browser tab on the Fediverse `GPL-3.0, Typescript`
|
* :heavy_check_mark: [**Fedishare**](https://gitlab.com/mugcake/fedishare): Firefox toolbar extension to share the current browser tab on the Fediverse `GPL-3.0, Typescript`
|
||||||
|
|
||||||
#### Other projects
|
### Other projects
|
||||||
|
|
||||||
* :black_nib: [**Mastodon Simplified Federation**](https://github.com/rugk/mastodon-simplified-federation): Simplifies following and interacting with remote users on other Mastodon instances. `ISC, Javascript`
|
* :black_nib: [**Mastodon Simplified Federation**](https://github.com/rugk/mastodon-simplified-federation): Simplifies following and interacting with remote users on other Mastodon instances. `ISC, Javascript`
|
||||||
|
|
||||||
## Reference material
|
## Reference material
|
||||||
|
|
||||||
#### Protocol specifications
|
### Protocol specifications
|
||||||
|
|
||||||
* :heavy_check_mark: [**ForgeFed**](https://notabug.org/peers/forgefed), formerly GitPub ([site](https://forgefed.peers.community), [Fedi account](https://floss.social/@forgefed)): A set of extensions to ActivityPub for federation between code forges (i.e. git hosting sites like GitLab, Gogs, Gitea, etc. Reference implementation is [Vervis](https://dev.angeley.es/s/fr33domlover/p/vervis)). `CC0-1.0`
|
* :heavy_check_mark: [**ForgeFed**](https://notabug.org/peers/forgefed), formerly GitPub ([site](https://forgefed.peers.community), [Fedi account](https://floss.social/@forgefed)): A set of extensions to ActivityPub for federation between code forges (i.e. git hosting sites like GitLab, Gogs, Gitea, etc. Reference implementation is [Vervis](https://dev.angeley.es/s/fr33domlover/p/vervis)). `CC0-1.0`
|
||||||
|
|
||||||
|
@ -241,43 +246,43 @@ This category is for any code project related to the Fediverse. They need not be
|
||||||
|
|
||||||
* :heavy_check_mark: [**SciFed**](https://synalp.frama.io/olki/scifed/) (Fedi accounts: [@rigelk](https://olki-social.loria.fr/@rigelk), [@cerisara](https://mastodon.etalab.gouv.fr/@cerisara)): A specification standard (Draft) for federation of scientific activities and content using ActivityPub, developed as part of the [OLKi](https://olki.loria.fr/) project.
|
* :heavy_check_mark: [**SciFed**](https://synalp.frama.io/olki/scifed/) (Fedi accounts: [@rigelk](https://olki-social.loria.fr/@rigelk), [@cerisara](https://mastodon.etalab.gouv.fr/@cerisara)): A specification standard (Draft) for federation of scientific activities and content using ActivityPub, developed as part of the [OLKi](https://olki.loria.fr/) project.
|
||||||
|
|
||||||
#### API documentation
|
### API documentation
|
||||||
|
|
||||||
## Tutorials
|
## Tutorials
|
||||||
|
|
||||||
#### Getting started
|
### Getting started
|
||||||
|
|
||||||
#### ActivityPub server-to-server (S2S)
|
### ActivityPub server-to-server (S2S)
|
||||||
|
|
||||||
#### ActivityPub client-to-server (C2S)
|
### ActivityPub client-to-server (C2S)
|
||||||
|
|
||||||
#### WebFinger
|
### WebFinger
|
||||||
|
|
||||||
#### Security
|
### Security
|
||||||
|
|
||||||
#### NodeInfo
|
### NodeInfo
|
||||||
|
|
||||||
## Research & Development
|
## Research & Development
|
||||||
|
|
||||||
#### Datashards
|
### Datashards
|
||||||
|
|
||||||
#### Object capabilities
|
### Object capabilities
|
||||||
|
|
||||||
#### Federated auth/authz
|
### Federated auth/authz
|
||||||
|
|
||||||
* :black_nib: [**The did:orb Method**](https://trustbloc.github.io/did-method-orb/) ([github](https://github.com/trustbloc/did-method-orb)): A DID Method for a fediverse of interconnected nodes and witnesses.
|
* :black_nib: [**The did:orb Method**](https://trustbloc.github.io/did-method-orb/) ([github](https://github.com/trustbloc/did-method-orb)): A DID Method for a fediverse of interconnected nodes and witnesses.
|
||||||
|
|
||||||
#### Content addressing
|
### Content addressing
|
||||||
|
|
||||||
* :black_nib: [**Content-addressible RDF**](https://openengiadina.net/papers/content-addressable-rdf.html): A scheme based on RDF allowing for data to be referred to by an identifier determined by the data itself (written by @pukkamustard of [openEngiadina](https://openengiadina.net), specification now part of [DREAM](https://dream.public.cat/pub/dream-data-spec))
|
* :black_nib: [**Content-addressible RDF**](https://openengiadina.net/papers/content-addressable-rdf.html): A scheme based on RDF allowing for data to be referred to by an identifier determined by the data itself (written by @pukkamustard of [openEngiadina](https://openengiadina.net), specification now part of [DREAM](https://dream.public.cat/pub/dream-data-spec))
|
||||||
|
|
||||||
* :black_nib: [**Encoding for Robust Immutable Storage** (ERIS)](https://inqlab.net/projects/eris/): ERIS is an encoding of arbitrary content into a set of uniformly sized, encrypted and content-addressed blocks as well as a short identifier (a URN) (written by @pukkamustard of [openEngiadina](https://openengiadina.net), specification now part of [DREAM](https://dream.public.cat/pub/dream-data-spec)).
|
* :black_nib: [**Encoding for Robust Immutable Storage** (ERIS)](https://inqlab.net/projects/eris/): ERIS is an encoding of arbitrary content into a set of uniformly sized, encrypted and content-addressed blocks as well as a short identifier (a URN) (written by @pukkamustard of [openEngiadina](https://openengiadina.net), specification now part of [DREAM](https://dream.public.cat/pub/dream-data-spec)).
|
||||||
|
|
||||||
#### Distributed Mutable Containers
|
### Distributed Mutable Containers
|
||||||
|
|
||||||
* :black_nib: [**Distributed Mutable Containers** (DMC)](https://inqlab.net/projects/dmc/): Distributed data structures that can hold references to content while allowing replicas of the data structures to diverge and merge without conflict (developed by [DREAM](https://dream.public.cat/pub/dream-data-spec))
|
* :black_nib: [**Distributed Mutable Containers** (DMC)](https://inqlab.net/projects/dmc/): Distributed data structures that can hold references to content while allowing replicas of the data structures to diverge and merge without conflict (developed by [DREAM](https://dream.public.cat/pub/dream-data-spec))
|
||||||
|
|
||||||
#### Peer-to-peer networking
|
### Peer-to-peer networking
|
||||||
|
|
||||||
## Maintainers
|
## Maintainers
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue