Extending Instant JChem
Instant JChem (IJC) is a desktop application for scientists to manage information in local and remote databases. IJC should be thought of as an extensible framework for building rich chemistry and biology database-oriented applications. It is built on top of many proven and stable software components and libraries (NetBeans, Apache, Spring Framework ...) and adds chemical/biological specific software components. The core parts of IJC are Discovery Informatics Framework (DIF) and Instant JChem Core (IJCCore) modules. DIF brings a non-visual abstraction layer on top of relational databases and the JChem API. The IJCCore module provides the user interface framework on top of DIF. Through the APIs provided by these two modules, together with NetBeans, Marvin and JChem APIs, it is possible to plug a new modules into IJC. Lot's of IJC 2.0 functionality uses this approach and is implemented in independent plugins. There are several potential areas to extend IJC, such as adding new field types, new visualization widgets for the form designer, context sensitive actions to process data present in IJC, etc.