3 ms·
We actually started a year before IPFS so we built our own DHT, but then IPFS came along and did a better job (the DHT part was never our primary focus) so we a
by ianopolous 11y ago
We actually started a year before IPFS so we built our own DHT, but then IPFS came along and did a better job (the DHT part was never our primary focus) so we adopted theirs. IPFS is a pleasure to work with, both programmatically and people-wise. Juan and Jeremy and the rest of the team are super friendly and responsive, and make great design decisions. Without sounding like I've drunk some coolaid, I really do think that IPFS is the future.
Currently we use IPFS for the P2P networking and treat it as a distributed hash table, so it has a really simple interface. As soon as IPNS is mature enough we will also switch to using that over our current centralised signed hash updates. Eventually we hope to use Filecoin as well for getting others to store your fragments. We have a centralised "core node" which stores username <--> public key mappings and pending follow requests, however both of these are well suited to some kind of blockchain for full decentralization. We currently proxy all queries to IPFS through our own server (either our public server, or the one you run on your machine), but that is not a fundamental requirement. We are working on a FUSE implementation as well. Everything we do is open source so yes anyone could write their own client.
- shazow 11y agoIf I were going to implement my own client for a subset of Peergos, is the protocol format documented somewhere? Is it a priority to encourage this kind of developer participation, or are you going to focus on your own implementation before encouraging participation? (Bonus points for demo minimal implementations.) As another commenter said, I'm also more excited about a social network "protocol" than another social network.
- ianopolous 11y agoAt the moment, no, you're the first person who's asked :-). It is however a pretty simple REST api, which would be easy for us to document. The main things you'll need in the client are TweetNaCl, scrypt and an implementation of our slight simplification of cryptree [1]. We have Java and Javascript implementations (though the Java isn't quite up-to-date). [1] http://boga.googlecode.com/svn/trunk/res/Docs/wuala-cryptree.pdf http://boga.googlecode.com/svn/trunk/res/Docs/wuala-cryptree...