1
0
Fork 0
forked from alemi/upub
upub/apb
alemi d50a762f63
fix(apb): is_empty === len()==0, new is_nothing
basically is_empty on an empty Node::Vec is true, but is_nothing on an
empty Node::Vec is false
2024-04-23 23:27:01 +02:00
..
src fix(apb): is_empty === len()==0, new is_nothing 2024-04-23 23:27:01 +02:00
Cargo.lock feat: separated apb types into crate, reworked 2024-04-06 16:56:13 +02:00
Cargo.toml feat(apb): restructured, added target and server 2024-04-11 00:27:17 +02:00
README.md docs: document crate a little 2024-04-06 19:16:15 +02:00

apb

traits and types for implementing ActivityPub

apb implements all ActivityStreams types as traits, so that implementing structs don't need to hold all possible fields, but only implement getters for relevant ones

apb also provides a Node<T> enum, which can represent ActivityPub nodes (empty, link, object, array)

read more in this crate's docs

why

upub uses these types to implement its federation, but I wanted to modularize apb types

state

this crate is still work in progress and favors upub's needs, get in touch if you'd like to help or tune apb to your project!