SynBioWave is built upon a couple of different technologies. Here is a short overview.
Google Wave is a web application Google introduced in 2009 to unify and modernize different online communication approaches. It has a strong collaborative and real-time focus and provides several ways to extend its functionality. We use this to create a framework for Synthetic Biology inside Google Wave.
Developers can build software to extend the functionalities of Google Wave. There are two kinds of extensions: Robots and Gadgets. Learn more about them on the architecture page. Robots can be written in Python or Java, Gadgets are written in Java Script. SynBioWave is written in Java so we can make use of the BioJava library.
BioJava is an open source project that provides a Java framework for bioinformatics programs. Biojava offers methods and data structures to work with biological data easily. Many parts of SynBioWave use the BioJava library, for example to parse different file formats.
Qooxdoo is one of the leading frameworks for creating rich internet application (RIAs). RIAs are web applications which are accessed from the browser and commonly made for multi user tasks. In contrast to usual web sites, RIAs look and feel like desktop applications. Building a RIA from scratch is nearly impossible. Therefore qooxdoo provides a platform-independent development tool chain, a state-of-the-art GUI toolkit and an advanced client-server communication layer.
Because Wave's user interface is only weakly customizable, qooxdoo is a perfect candidate to extend Wave's user interface with custom toolbars, buttons, forms, context-menus and much more.
GWT and Cobogwave
With Cobogwave you can develop Gadgets for Wave using the Google Web Toolkit (GWT) read more about it here.