cohosting
cohosting copied to clipboard
A set of light tools and conventions for cohosting public websites and files on IPFS
Experiment in MFS-based cohosting
Exploration around simple tools and conventions for cohosting existing websites with IPFS
Motivation
- Make it easier for people to contribute storage and bandwidth to sites and datasets they care about
- Periodically detect updates to and preload them to a local node
- Experiment in userland: make it easy to implement, no new APIs, reuse existing ones
- Identify constraints of the mutable filesystem (MFS) and propose ways to improve it
Scope vs. Use Cases
See this analysis.
Specification
See SPEC.md
🚧 note: this is a draft, an early, exploratory experiment 🚧
Feedback is welcome. Fill an issue!
Potential Implementations
This specification is not implemented yet. The following IPFS Shipyard projects could implement it:
🍎 = Not started
🍊 = In progress
🍏 = Complete
🍊 cohosting.sh
MVP bash script that can be used for cli
- [x]
addrmfor adding / removing sites to cohosting list via commandline - [x]
synca command to run cohosting check (for use incrondetc) - [x]
gc [n]drop all old snapshots (ifnis provided, keeps that many snapshots per site) - [ ] Lazy cohosting
🍏 ipfs-cohost
NPM-based interactive cli tool
- [x] switch from
pinto MFS-based spec
🍎 ipfs-companion
browser extension
- [ ] provides UI for adding / removing sites via browser action menu
- [ ] runs cohosting check periodically
🍎 ipfs-desktop
desktop app and GUI for managing go-ipfs
- [ ] runs cohosting check periodically
🍎 ipfs-webui
web frontend for IPFS node
- [ ] provides UI for adding / removing sites to cohosting list as an experiment on Settings page