Replies: 1 comment 2 replies
-
Sorry for the negative comments, but it is quite difficult to build a wiki system on atproto now. I recommend wait until the shared data system is added. The initial work is expected to take place in the first half of this year. A rough idea can be found here. This thread may be helpful. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi everyone,
I've been thinking about how to implement forums and wikis within the AtProto ecosystem. These use cases are a bit different from the typical record concepts we work with, as the individual posts or edits are owned by users, while the overall thread or page is inherently owned by the community. This raises a few unique questions about data ownership, management, and moderation.
Currently, I’ve been experimenting with a basic wiki application where users can create, view, and edit markdown articles. Here’s the approach I’ve taken so far:
User Ownership of Edits: Every time a user makes a change, it creates two things:
This structure works for tracking individual edits but introduces a few interesting challenges that I’d love to get some feedback on.
Where should the community-owned content live?
Should the community-driven content (like a thread or a wiki page) exist in a PDS under a community account, or should it reside directly in the AppView? The former might allow better shared access and visibility, but I’m unsure about the best way to balance this with the AtProto model’s emphasis on open access.
Managing URLs/Page Slugs:
Right now, I’m using the rkey for generating page URLs, but this isn't a good solution. How should I handle URLs and page slugs to ensure they are persistent and user-friendly, human-readable, etc?
Race Conditions & Conflict Resolution:
Given the collaborative nature of wikis, how can we best manage race conditions when multiple users are trying to edit the same article at once? I have loose ideas about using Conflict-free Replicated Data Types (CRDTs) but haven't begun to think about implementing it. Has anyone else faced this?
Moderation and Admin Edits:
What’s the best way to handle moderation and admin changes within these types of applications? Traditionally forum admins can edit user posts and wikis have tools to lock pages.
I’m excited to hear your thoughts, especially from those of you who have experience with community-driven apps or complex data structures in AtProto. Any ideas or suggestions are greatly appreciated! Looking forward to the discussion.
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions