Version 12, last updated by Andy Singleton at April 08, 2010 19:08 UTC
This workspace explains how to contribute to the development of the Assembla.com application, which we internally call "breakout".
The core of Assembla.com / Breakout is a Ruby on Rails application running on a MySQL database. It uses Web services to communicate with tool servers running other kinds of applications in a federated architecure. Tool servers can host subversion, git, trac, and chat, and other applications that fit into Assembla's team permissioning system.
We post a recent version of our source code here, under an open-but-not-free development license.
Sharing code makes it easier for us to recruit and train new developers. We hire developers for both Assembla.com development, and for client projects, and we often ask them to start by working on the Assembla application. However, the most important reason for posting this code and documentation is to get ideas, contributions and improvements from outside developers. As you can see, we have a lot requests for improvements. In order to maintain quality, our development team is focused on some core features - Tickets, Repositories, and event notifications. We work on being best of breed with these components. We intend to work with outside developers to integrate other collaboration and build management tools, and maintain them at a high level of quality.
You can extend Assembla.com with new tools - extra tabs on the workspace - that represent small applications for your team. You can also offer to take responsibility for one of the existing tools that is not in our core list.
In return, you will get bounty payments. We are currently budgeting from $1,000 to $10,000 for initial implementations. We will also give you a logo and links on the tool, so that you can show off your expertise to our expanding community. And, we will qualify you for other work in the Assembla ecosystem.
How to propose a bounty project
Please look at this list of Project Ideas for some ideas about the tools and improvements that we are interested in. Email enhance@assembla.com to make a proposal.
How to get started as a developer
- Install the basic Web application, with these instructions to Install application stack and Run the application
- Optionally, install more components with these instructions for setting up optional components
- Create a simple new tool with these instructions to Add new tools