A federated online encyclopedia
Go to file
Felix Ableitner 98c6726b84 Use `Patch` type for federation 2023-12-05 13:25:02 +01:00
migrations conflict moved to db 2023-12-05 12:05:55 +01:00
src Use `Patch` type for federation 2023-12-05 13:25:02 +01:00
tests some cleanup 2023-12-05 13:19:50 +01:00
.gitignore cargo init 2023-11-14 23:41:58 +01:00
Cargo.lock conflict moved to db 2023-12-05 12:05:55 +01:00
Cargo.toml conflict moved to db 2023-12-05 12:05:55 +01:00
LICENSE add agpl license 2023-11-15 01:38:16 +01:00
README.md add description to readme 2023-11-28 14:18:51 +01:00
diesel.toml wip: Add diesel and postgres 2023-11-30 11:46:42 +01:00

README.md

fediwiki

A federated Wikipedia alternative. Main objects in terms of federation are the Instance and Article. Each article belongs to a single origin instance, the one where it was originally created. Articles have a collection of Edits a custom ActivityPub type containing a diff. The text of any article can be built by starting from empty string and applying all associated edits in order. Instances can synchronize their articles with each other, and follow each other to receive updates about articles. Edits are done with diffs which are generated on the backend, and allow for conflict resolution similar to git. Editing also works over federation. In this case an activity Update/Edit is sent to the origin instance. If the diff applies cleanly, the origin instance sends the new text in an Update/Article activity to its followers. In case there is a conflict, a Reject activity is sent back, the editor needs to resolve and resubmit the edit.

License

AGPL