ActivityPub types and traits, for Rust
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Aode e6ca68c9ee Remove git depends 1 month ago
src Use 2018 edition, anyhow 1 month ago
.gitignore WIP WIP WIP WIP WIP 1 year ago
ACKNOWLEDGEMENTS Add license info 1 year ago
Cargo.toml Remove git depends 1 month ago
LICENSE Add license info 1 year ago Update readme 1 month ago


This crate defines the base set of types from the ActivityPub specification.


Add the following to your Cargo.toml

# Cargo.toml

activitypub = "0.2"

And then use it in your project

use activitypub::{context, object::Video};
use anyhow::Error;

fn run() -> Result<(), Error> {
    let mut video = Video::default();

    let video_string = serde_json::to_string(&video)?;

    let video: Video = serde_json::from_str(&video_string)?;



Feel free to open issues for anything you find an issue with. Please note that any contributed code will be licensed under the GPLv3.


Copyright © 2018 Riley Trautman

ActivityPub is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ActivityPub is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. This file is part of ActivityPub.

You should have received a copy of the GNU General Public License along with ActivityPub. If not, see