Elgg is probably the most mature open source (GPL2/MIT) 'framework'. I assume this is compatible with AGPL.
I've looked in more detail at version 1.7 which was launched earlier this month, and it appears to have two *VERY* attractive features: *Restful API (New in 1.7) * http://docs.elgg.org/wiki/REST_API This looks like it should enable server to server communication via HTTP What you'd really want to see is the resful api working will with the MVC Controller, so I can send a request to almost any (for example user/wall etc.) page, and it will be able to pass it along to the right handler. *Global Idenitifiers (GUID) *Well they're actually local identifiers but unique to an install, so combining with the install root, they can become global. But every object has a global identifier. http://docs.elgg.org/wiki/GUID I've reviewed it in more detail and I'm pretty impressed. I think at a minimum this is a project that much can be copied from. We can take a lot of the GNUv2 ideas and reuse, I think they've got a hell of a lot of stuff right. It's not quite as modern a framework as the likes of symfony, and the FOAFs need work, but there's a lot of work in there and plugins that would get us quite far quickly. If we can get a federated social net obeying linked data principles under AGPL quickly nailed, that can give us more scope to adding fun stuff like realtime protocols, desktop integration, encryption etc. Is there a case for branching elgg? Or perhaps beta testing a sample elgg community for a month or so, and see if there are any roadblocks.
