mirror of
https://github.com/fazo96/ipfs-boards
synced 2025-01-10 12:24:20 +01:00
1.4 KiB
1.4 KiB
IPFS Boards
Components
- Client
- a static web application to access IPFS Boards
- Cache Server
- can cache boards, helping to serve them via IPFS and via an HTTP gateway to the static web application and the boards' data
Note: until the IPFS Javascript Implementation is done:
- the client (a static web application) requires a full IPFS node because it needs to be able to discover content via the IPFS API.
- the cache server (written in node) requires a full IPFS node.
Note: if you want to write data, your IPNS needs to be taken over by the application. This problem will be addressed in the future
Data Storage
Each user exposes via IPNS a folder containing:
- boards
- board name(s)
- posts
- board name(s)
- admin name(s)
- post(s)
- admin name(s)
- board name(s)
- comments
- board name(s)
- admin name(s)
- comment(s)
- admin name(s)
- board name(s)
- votes
- board name(s)
- admin name(s)
- vote(s)
- admin name(s)
- board name(s)
- compatibility: could be used to store compatibility information
Post
{
"title": "Title of the post",
"date": "date of the post",
"text": "Content of the post"
}
Optionally a post could have a text-url
field so that crossposting is
possible for lange texts without duplicating data.
Comment
Comment text
Vote
ipfs-board:vote-for:object_url
Versioning
The protocol should be versioning once it's stable enough to be useful