Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ActivityPub #13

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions proposed/activitypub-meta.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# ActivityPub Meta Document

## 1. Summary

ActivityPub
W3C Recommendation 23 January 2018

The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format. It provides a client to server API for creating, updating and deleting content, as well as a federated server to server API for delivering notifications and content.

## 2. Why Bother?

If we implement the so-called ActivityPub protocol to enable Joomla Websites to talk to each other; that’s the basis of the “federation”. Federation is what you already know from e-mail, even if you may not know it by name: It’s the concept of servers hosting users that can talk to users from other servers. That protocol pins down on paper how exactly such inter-server communication would look like, using a vocabulary that can be applied for a variety of purposes.
Think of a social network as any piece of software that implements ActivityPub. That software can be wildly different in how it looks and what it does! But the social graph–what we call the people and their connections–is the same.

## 3. Scope

### 3.1 Goals

- Possibility to follow an author on a Joomla Website
- Getting information, if there is a new article of that author in an ActivityPub enabled software (e.g. Mastodon)

### 3.2 Non-Goals

## 4. Approaches

### 4.1 Approach 1

#### 4.1.1 Projects Using Approach 1

### 4.2 Approach 2

#### 4.2.1 Projects Using Approach 2

### 4.3 Comparison of Approaches

### 4.4 Chosen Approach

## 5. Design Decisions

## 6. People

### 6.1 Editor(s)

* Hagen Graf <[email protected]>

### 6.2 Sponsors

* N/A

### 6.3 Contributors

* N/A

## 7. Votes

* **Entrance Vote:** _(not yet taken)_
* **Acceptance Vote:** _(not yet taken)_

## 8. Relevant Links

https://www.w3.org/TR/activitypub/

## 9. Errata

...
45 changes: 45 additions & 0 deletions proposed/activitypub.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# \<Subject>

This document describes ...

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be
interpreted as described in [RFC 2119][].

[RFC 2119]: http://tools.ietf.org/html/rfc2119

### References

- [RFC 2119][]: Key words for use in RFCs to Indicate Requirement Levels

## 1. Specification

### 1.1 Spec A

### 1.2 Spec B

## 2. Interfaces

### 2.1 Interface A

The following interface MUST be implemented by compatible ...

```php
namespace ...;

interface ...
{
}
```

### 2.2 Inteface B

The following interface MUST be implemented by compatible ...

```php
namespace ...;

interface ...
{
}
```