wip: Custom mirroring tangled knot written in Rust
rust tangled mirror knot
1

Configure Feed

Select the types of activity you want to include in your feed.

route(owner): add route

and that makes that you can know add the knot to tangled!

Clément (Jun 7, 2026, 6:16 PM +0200) 0d462edc 76292c8f

+17
+3
crates/knotty-knot/src/xrpc/mod.rs
··· 1 1 use axum::Router; 2 + use jacquard::api::sh_tangled::owner::OwnerRequest; 2 3 use jacquard::api::sh_tangled::repo::create::CreateRequest; 3 4 use jacquard::api::sh_tangled::repo::delete::DeleteRequest; 4 5 use jacquard_axum::IntoRouter; ··· 7 8 8 9 mod create_repo; 9 10 mod delete_repo; 11 + mod owner; 10 12 11 13 pub fn router() -> Router<KnotState> { 12 14 Router::new() 15 + .merge(OwnerRequest::into_router(owner::handler)) 13 16 .merge(CreateRequest::into_router(create_repo::handler)) 14 17 .merge(DeleteRequest::into_router(delete_repo::handler)) 15 18 }
+14
crates/knotty-knot/src/xrpc/owner.rs
··· 1 + use axum::{Json, extract::State}; 2 + use jacquard::api::sh_tangled::owner::OwnerOutput; 3 + 4 + use crate::{error::KnotError, state::KnotState}; 5 + 6 + #[axum::debug_handler(state = KnotState)] 7 + pub async fn handler( 8 + State(state): State<KnotState>, 9 + ) -> Result<Json<OwnerOutput<'static>>, KnotError> { 10 + Ok(Json(OwnerOutput { 11 + owner: state.owner, 12 + extra_data: Default::default(), 13 + })) 14 + }