- ✔ Stable web interface and data formats (at least pre-crdt)
- ✔ Streaming E2E encrypted video (streaming disabled by default)
- ✔ Streaming download of arbitrarily large files (disabled by default)
- ✔ Max user count to deny new user signups after some limit (And display error to user)
- ✔ Max storage quota per user (enforced on puts) and error shown to user
- ✔ Whitelist of users that can write to this server
- ✔ Blacklist of users that can't be read from this server (illegal content guard)
- ✔Each user stores an ipfs node id (cid) in their PKI which is the server responsible for storing their data
- ✔Implement MutablePointers and SocialNetwork in terms of ipfs p2p stream
- ✔Mirror core node PKI on every node for private friend lookups
- ✔Implement corenode in terms of ipfs p2p stream to allow self hosting in ipfs itself
- Initially don't need much UI other than upload text file for keymail an select recipient
- Application to display and edit text (ideally by granting app write access only to a hidden keymail folder)
- Decide format, information compatible with email headers
- Bridge to email - a client that polls an email account, writing newly received emails into peergos, and sending emails from new files in a particular folder
- owner invite others
- owner can grant admin to others (admin => they can invite new users)
- allow inline pictures
- be careful about leaking social metadata accidentally
- Essentially just a group chat that is for most (all?) your friends, but similar to a Facebook or Twitter feed
- Move asymmetric crypto (follow requests and signing roots) to a post-quantum algorithm
- http://sphincs.cr.yp.to/software.html
- https://www.win.tue.nl/~tchou/mcbits/
- Zk-SNARKs for follow requests? https://blog.ethereum.org/2016/12/05/zksnarks-in-a-nutshell/
- Use cryptocurrency to pay for username claims, must be privacy preserving, and post-quantum