Brooklyn is available at GitHub brooklyncentral/brooklyn. Check it out using:
{% highlight bash %} git clone git@github.com:brooklyncentral/brooklyn.git {% endhighlight %}
You'll find versions in branches, and examples in the examples sub-dir. These examples are pushed to the brooklyn-examples GitHub project when a version is released.
Brooklyn is split into the following projects and subprojects:
api: the pure-Java interfaces for interacting with the systemcore: the base class implementations for entities and applications, entity traits, locations, policies, sensor and effector support, tasks, and morepolicies: collection of useful policies for automating entity activitysoftware: entities which are mainly launched by launched software processes on machines, and collections thereofbase: software process lifecycle abstract classes and drivers (e.g. SSH)webapp: web servers (JBoss, Tomcat), load-balancers (Nginx), and DNS (Geoscaling)database: relational databases (SQL)nosql: datastores other than RDBMS/SQL (often better in distributed environments)messaging: messaging systems, including Qpid, Apache MQsystems: entities which are mainly created or managed by other systems, where Brooklyn integrates with those (multi-machine) systems and is removed from the processeswhirr: base Whirr integration, and entities built on Whirr such as the configurable hadoop deploymentopenshift: entity for deploying and managing OpenShift webappsusage: projects which make Brooklyn easier to use, either for end-users or Brooklyn developerstestdocs: the markdown source code for this documentation, as described hereexamples: some canonical examples, as listed heresandbox: various projects, entities, and policies which the Brooklyn Project is incubatingIf you're interested in building and editing the code, check out:
If you want to start writing your own policies and entities, have a look at:
Where things aren't documented please ask us at brooklyn-dev@googlegroups.com so we can remedy this!