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:
Arnold Schrijver 2022-02-01 06:47:27 +01:00
commit 5c45a19bc6

View file

@ -10,6 +10,7 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
## Contents
- [Developer tools](#developer-tools)
- [Frameworks](#frameworks)
- [Libraries](#libraries)
- [Plugins](#plugins)
- [Relays](#relays)
@ -41,12 +42,18 @@ Emoji's for each entry indicate whether it is added to the [Fediverse Party](htt
## 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: [**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-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`
* :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`
* :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`
#### 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`
@ -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`
#### 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`
@ -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).
#### 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#`
@ -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`
#### Utilities
### Utilities
* :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`
#### 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`
@ -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.
#### 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`
#### 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: [**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`
## 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`
@ -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.
#### API documentation
### API documentation
## 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
#### 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.
#### 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: [**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))
#### Peer-to-peer networking
### Peer-to-peer networking
## Maintainers