Proposal for the Glimmer Project

The project has been created. Please visit the project page.

Introduction

Glimmer is a JRuby DSL that enables easy and efficient authoring of user-interfaces using the robust platform-independent Eclipse SWT library. Glimmer comes with built-in data-binding support to greatly facilitate synchronizing UI with domain models.

Glimmer is proposed as an open source project under the Eclipse Technology Project. This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process document) and is written to declare its intent and scope. This proposal is written to solicit additional participation and input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.glimmer newsgroup.

Background and Goal

Ruby, a dynamically-typed object-oriented language, provides great productivity gains due to its powerful expressive syntax and dynamic nature as demonstrated by the Ruby on Rails framework for web development. However, it currently lacks a robust platform-independent framework for building desktop applications.

Given that Java libraries can now be utilized in Ruby code through JRuby, Eclipse technologies, such as SWT, JFace, and RCP can help fill the gap of desktop application development.

The goal of the Glimmer project is to create a JRuby framework on top of Eclipse technologies to enable easy and efficient authoring of desktop applications by taking advantage of the Ruby language.

Packaging and Deployment

As Glimmer solidifies its DSL to write SWT and RCP applications, the next challenge is to figure out how to elegantly integrate it as an Eclipse plug-in.

Additionally, we will consider packaging Glimmer (or parts of it) as a RubyGem to make it easy to consume by the Ruby community.

Project Scope

The scope of the project is simply to make it possible to use a JRuby framework to author Eclipse-based applications.

Future work may involve enhancements to meet new use-cases or take advantage of other Eclipse technologies like the Eclipse Modeling Framework and other Ruby technologies like Rails.

While Glimmerís original goal is to enable desktop application development with JRuby, that does not preclude it from growing to cover other areas, such as web development. For example, when SWT starts supporting Ajax widgets, Glimmer may be enhanced to further simplify web development (e.g. provide a Glimmer Rails plug-in.)

Organization

Mentors

  • Chris Aniszczyk
  • Ed Merks

Initial Committers

Interested Parties

  • PDE - Chris Aniszczyk [zx@us.ibm.com]
  • EMF - Ed Merks [merks@ca.ibm.com]