The Graphite active code completion system for Java + Eclipse.
Java JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.



An active code completion system for Java. See the webpage for more information, a video, slides and a paper:


The .jar file in the /eclipse/plugins directory can be dropped into the dropins directory in your Eclipse installation. You'll see a Graphite entry in the Eclipse Preferences window if it worked.


To annotate your Java classes with the @GraphitePalette annotation, its definition must be available. This is available in the .jar file in /java.

Palette Development

Palettes are written using the standard browser-based HTML5 stack. The graphite.js file found in the js/ directory must be included to support integration into the editor using Graphite and debugging of Graphite API calls in the browser.

Example palettes are available in the palettes directory.

Plug-In Development

If you want to change the Graphite plug-in itself, the /eclipse directory can be imported as a project into Eclipse if you have the Plug-In Development tools installed (you can find it using Eclipse's built-in plug-in installer.)



If you use Graphite in an academic paper, we'd appreciate a citation:

Cyrus Omar, YoungSeok Yoon, Thomas D. LaToza, Brad A. Myers, Active Code Completion. ICSE'2012: 34nd International Conference on Software Engineering, Zurich, Switzerland, 2-9 June 2012. pp. 859-869.


The code is provided under the terms of the Eclipse Public License - v 1.0. The full license can be viewed at