├── .github └── CODEOWNERS ├── .gitignore ├── .rustfmt.toml ├── .woodpecker.yml ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── docs ├── 01_intro.md ├── 02_overview.md ├── 03_federating_users.md ├── 04_federating_posts.md ├── 05_configuration.md ├── 06_http_endpoints_axum.md ├── 07_fetching_data.md ├── 08_receiving_activities.md ├── 09_sending_activities.md └── 10_fetching_objects_with_unknown_type.md ├── examples ├── README.md ├── live_federation │ ├── activities │ │ ├── create_post.rs │ │ └── mod.rs │ ├── database.rs │ ├── error.rs │ ├── http.rs │ ├── main.rs │ ├── objects │ │ ├── mod.rs │ │ ├── person.rs │ │ └── post.rs │ └── utils.rs └── local_federation │ ├── activities │ ├── accept.rs │ ├── create_post.rs │ ├── follow.rs │ └── mod.rs │ ├── actix_web │ ├── http.rs │ └── mod.rs │ ├── axum │ ├── http.rs │ └── mod.rs │ ├── error.rs │ ├── instance.rs │ ├── main.rs │ ├── objects │ ├── mod.rs │ ├── person.rs │ └── post.rs │ └── utils.rs └── src ├── activity_queue.rs ├── activity_sending.rs ├── actix_web ├── http_compat.rs ├── inbox.rs ├── middleware.rs ├── mod.rs └── response.rs ├── axum ├── inbox.rs ├── json.rs ├── middleware.rs └── mod.rs ├── config.rs ├── error.rs ├── fetch ├── collection_id.rs ├── mod.rs ├── object_id.rs └── webfinger.rs ├── http_signatures.rs ├── lib.rs ├── protocol ├── context.rs ├── helpers.rs ├── mod.rs ├── public_key.rs ├── tombstone.rs ├── values.rs └── verification.rs ├── reqwest_shim.rs └── traits ├── either.rs ├── mod.rs └── tests.rs /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @Nutomic @dessalines 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/.gitignore -------------------------------------------------------------------------------- /.rustfmt.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/.rustfmt.toml -------------------------------------------------------------------------------- /.woodpecker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/.woodpecker.yml -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/README.md -------------------------------------------------------------------------------- /docs/01_intro.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/01_intro.md -------------------------------------------------------------------------------- /docs/02_overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/02_overview.md -------------------------------------------------------------------------------- /docs/03_federating_users.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/03_federating_users.md -------------------------------------------------------------------------------- /docs/04_federating_posts.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/04_federating_posts.md -------------------------------------------------------------------------------- /docs/05_configuration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/05_configuration.md -------------------------------------------------------------------------------- /docs/06_http_endpoints_axum.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/06_http_endpoints_axum.md -------------------------------------------------------------------------------- /docs/07_fetching_data.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/07_fetching_data.md -------------------------------------------------------------------------------- /docs/08_receiving_activities.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/08_receiving_activities.md -------------------------------------------------------------------------------- /docs/09_sending_activities.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/09_sending_activities.md -------------------------------------------------------------------------------- /docs/10_fetching_objects_with_unknown_type.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/docs/10_fetching_objects_with_unknown_type.md -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/README.md -------------------------------------------------------------------------------- /examples/live_federation/activities/create_post.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/activities/create_post.rs -------------------------------------------------------------------------------- /examples/live_federation/activities/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod create_post; 2 | -------------------------------------------------------------------------------- /examples/live_federation/database.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/database.rs -------------------------------------------------------------------------------- /examples/live_federation/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/error.rs -------------------------------------------------------------------------------- /examples/live_federation/http.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/http.rs -------------------------------------------------------------------------------- /examples/live_federation/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/main.rs -------------------------------------------------------------------------------- /examples/live_federation/objects/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/objects/mod.rs -------------------------------------------------------------------------------- /examples/live_federation/objects/person.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/objects/person.rs -------------------------------------------------------------------------------- /examples/live_federation/objects/post.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/objects/post.rs -------------------------------------------------------------------------------- /examples/live_federation/utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/live_federation/utils.rs -------------------------------------------------------------------------------- /examples/local_federation/activities/accept.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/activities/accept.rs -------------------------------------------------------------------------------- /examples/local_federation/activities/create_post.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/activities/create_post.rs -------------------------------------------------------------------------------- /examples/local_federation/activities/follow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/activities/follow.rs -------------------------------------------------------------------------------- /examples/local_federation/activities/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/activities/mod.rs -------------------------------------------------------------------------------- /examples/local_federation/actix_web/http.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/actix_web/http.rs -------------------------------------------------------------------------------- /examples/local_federation/actix_web/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/actix_web/mod.rs -------------------------------------------------------------------------------- /examples/local_federation/axum/http.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/axum/http.rs -------------------------------------------------------------------------------- /examples/local_federation/axum/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/axum/mod.rs -------------------------------------------------------------------------------- /examples/local_federation/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/error.rs -------------------------------------------------------------------------------- /examples/local_federation/instance.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/instance.rs -------------------------------------------------------------------------------- /examples/local_federation/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/main.rs -------------------------------------------------------------------------------- /examples/local_federation/objects/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/objects/mod.rs -------------------------------------------------------------------------------- /examples/local_federation/objects/person.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/objects/person.rs -------------------------------------------------------------------------------- /examples/local_federation/objects/post.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/objects/post.rs -------------------------------------------------------------------------------- /examples/local_federation/utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/examples/local_federation/utils.rs -------------------------------------------------------------------------------- /src/activity_queue.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/activity_queue.rs -------------------------------------------------------------------------------- /src/activity_sending.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/activity_sending.rs -------------------------------------------------------------------------------- /src/actix_web/http_compat.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/actix_web/http_compat.rs -------------------------------------------------------------------------------- /src/actix_web/inbox.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/actix_web/inbox.rs -------------------------------------------------------------------------------- /src/actix_web/middleware.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/actix_web/middleware.rs -------------------------------------------------------------------------------- /src/actix_web/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/actix_web/mod.rs -------------------------------------------------------------------------------- /src/actix_web/response.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/actix_web/response.rs -------------------------------------------------------------------------------- /src/axum/inbox.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/axum/inbox.rs -------------------------------------------------------------------------------- /src/axum/json.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/axum/json.rs -------------------------------------------------------------------------------- /src/axum/middleware.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/axum/middleware.rs -------------------------------------------------------------------------------- /src/axum/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/axum/mod.rs -------------------------------------------------------------------------------- /src/config.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/config.rs -------------------------------------------------------------------------------- /src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/error.rs -------------------------------------------------------------------------------- /src/fetch/collection_id.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/fetch/collection_id.rs -------------------------------------------------------------------------------- /src/fetch/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/fetch/mod.rs -------------------------------------------------------------------------------- /src/fetch/object_id.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/fetch/object_id.rs -------------------------------------------------------------------------------- /src/fetch/webfinger.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/fetch/webfinger.rs -------------------------------------------------------------------------------- /src/http_signatures.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/http_signatures.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/protocol/context.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/context.rs -------------------------------------------------------------------------------- /src/protocol/helpers.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/helpers.rs -------------------------------------------------------------------------------- /src/protocol/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/mod.rs -------------------------------------------------------------------------------- /src/protocol/public_key.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/public_key.rs -------------------------------------------------------------------------------- /src/protocol/tombstone.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/tombstone.rs -------------------------------------------------------------------------------- /src/protocol/values.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/values.rs -------------------------------------------------------------------------------- /src/protocol/verification.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/protocol/verification.rs -------------------------------------------------------------------------------- /src/reqwest_shim.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/reqwest_shim.rs -------------------------------------------------------------------------------- /src/traits/either.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/traits/either.rs -------------------------------------------------------------------------------- /src/traits/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/traits/mod.rs -------------------------------------------------------------------------------- /src/traits/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LemmyNet/activitypub-federation-rust/HEAD/src/traits/tests.rs --------------------------------------------------------------------------------