upub/apb/src/README.md
alemi 520c8eff3a
feat: separated apb types into crate, reworked
no more "impl ..." hell, each trait has associated types so that we know
it's a "Self::Link" or a "Self::Actor", but in practice they can both be
a "serde_json::Value" and thus we can change its type. also Node::Array
is now a Vec<T> rather than Vec<Node<T>> because it makes more sense.
Node is Iterable and will yield zero (Empty|Link), one (Object) or many
(Array) Ts
2024-04-06 16:56:13 +02:00

1.7 KiB

activitystream

here live all ActivityStreams types

structure

├── Link
│   └── Mention
├── Object
│   ├── Activity
│   │   ├── Accept
│   │   │   └── TentativeAccept
│   │   ├── Add
│   │   ├── Announce
│   │   ├── Create
│   │   ├── Delete
│   │   ├── Dislike
│   │   ├── Flag
│   │   ├── Follow
│   │   ├── IntransitiveActivity
│   │   │   ├── Arrive
│   │   │   ├── Question
│   │   │   └── Travel
│   │   ├── Ignore
│   │   │   └── Block
│   │   ├── Join
│   │   ├── Leave
│   │   ├── Like
│   │   ├── Listen
│   │   ├── Move
│   │   ├── Offer
│   │   │   └── Invite
│   │   ├── Read
│   │   ├── Reject
│   │   │   └── TentativeReject
│   │   ├── Remove
│   │   ├── Undo
│   │   ├── Update
│   │   └── View
│   ├── Actor (not technically)
│   │   ├── Application
│   │   ├── Group
│   │   ├── Organization
│   │   └── Person
│   ├── Article
│   ├── Collection
│   │   ├── CollectionPage
│   │   └── OrderedCollection
│   │       └── OrderedCollectionPage
│   ├── Document
│   │   ├── Audio
│   │   ├── Image
│   │   ├── Page
│   │   └── Video
│   ├── Event
│   ├── Note
│   ├── Place
│   ├── Profile
│   ├── Relationship
│   └── Tombstone
└── PublicKey (not in spec)