We've been hard at work for the last year on the latest version of 2cloud. We call it Project Bessie, and it's the biggest step we've taken in the two years we've run this project. It's more several steps than a single step, to be honest.
Here's the architecture, as it stands:
- The core library, twocloud, is the package that provides the central models and database interactions. Written in Go, it is the helper that other Go packages use to insert data into the system, and ties in statistics, instrumentation, and auditing. This is located at
https://github.com/2cloud/twocloud- An API using Go's net/http package. This is a separate server that handles requests, validates them, parses them, and uses the twocloud package to store them and propagate them throughout the system. This is located at
https://github.com/2cloud/api- Tinkerbell. This is a push server that allows notifications to be sent through Google Cloud Messaging or WebSockets. Written using the Go websockets package, it enables the realtime aspects of the service. This is located at
https://github.com/2cloud/tinkerbell- A web server. This provides a web interface for the API, allowing users to browse and send links after logging into a website. This is located at
https://github.com/2cloud/web- A Chrome extension that uses the Javascript client library to provide native access to the service from within Chrome. This is available at
https://github.com/2cloud/chrome
You can view the progress of each of these by checking out the issues in their respective repository. Anything with any issues should reflect the current state of affairs; those repositories without issues will be updated with issues to reflect the current state of affairs shortly. So far, nothing is 100% complete; everything has some work to be done on it, and a lot of things require a lot of work. They should all have a rather optimistic deadline as the due date for their v1 milestone.
We're trying desperately to get at least a beta release out during 2012. Failing that, we're aiming at the first part of January, 2013. We've been working on this too long, and we need to get back into the habit of shipping things.