Today we’re releasing a dev-preview of buddycloud and would love your feedback.
buddycloud is an extensible open source distributed social network. A user’s identity looks like firstname.lastname@example.org and users share content in “channels”.
We started buddycloud because of the growing “closed-ness” of existing social networks. For example Twitter’s increasing API contortions about what one can and can’t do with their API or which quadrant one is supposed to operate in. We also think it’s important to build services against a known protocol that works against any buddycloud instance on any domain (not paid-for APIs). Naturally this called for a completely decentralised design built on open standards like Atom, Activitystrea.ms and XMPP.
Each buddycloud-enabled domain runs a suite of servers. Each buddycloud server uses DNS to find, connect, and sync content in realtime with other buddycloud servers. This content can be any kind of structured data or large files.
Today we are releasing open source implementations of the following buddycloud servers: the buddycloud-channel server (shares your channel / your activity stream with trusted followers), a media server (shares anything from a small avatar to a multi-TB file), a push-server (email and mobile updates), and a taste engine (“channels you might like”). Some of the team are working on more servers that will let you suck content in and out of existing social networks.
Our reference implementations are written in Java and node and use Postgres for storing data. The web-client is built on backbone.js. There’s also a console client written in Python.
Next tasks: client speedup using IndexedDB. Following permissions, Android, iOS and Firefox OS clients and release buddycloud.js.
We really hope that some of this could be useful for your project: