Personal projects
The DJ Project (website)

The DJ Project is an umbrella project to enhance the user experience of Java on the desktop.

It integrates Jar files to the Windows platform with icon support and proper process management.

It also provides a library to embed some native components (Web Browser, Flash Player) in Swing applications.

RRDiagram (website), RRDiagram-JS (website)

RRDiagram and RRDiagram-JS allow to generate railroad diagrams.

These libraries can generate railroad diagrams (also called syntax diagrams) from code or from BNF notation, either from Java or on-the-fly from Javascript embedded in web pages. The output format is a very compact SVG image where rules can contain links.

SWTSwing (website)

SWTSwing is a replacement for the native layer of Eclipse SWT with Swing.

It allows running RCP or SWT applications, including the Eclipse SDK, where the native layer is not available (for example on OS2 and eComStation), and allows perfect interaction between SWT and Swing.

DZone Voting (website)

DZone Voting is a Firefox add-on that allows to vote or submit new links to the DZone website from any web page.

Note that DZone is a social-network website for developers to share resources.

UDoc (website)

UDoc is a graphical visualization tool that helps to analyze Java programs and libraries.

It generates dynamic UML-like diagrams from local or remote Java documentations, source files and Java binaries.

It uses parsing techniques and bytecode-analysis using the ASM library.

UIHierarchy (website)

UIHierarchy is a Java library that greatly simplifies the development, maintenance and readability of AWT/Swing code.

The developer uses a domain specific language (DSL) defined in Java, to represent the componentsí containment hierarchies.

It also ships with an XML module that allows capturing those hierarchies to external files.


UIEnabler is a variation of my old AWTEnabler project. It allows to list the running Java applications and self inject into them as a Java agent.

Once injected, a window appears that allows to enable any disabled component of the target application.


JConsoleAgent is a plugin for JConsole that allows to load any Java agent to monitored Virtual Machines.

This plugin helps to solve the loading of such agents, which currently has to be done programmatically.

Desktop FX

Desktop FX is an attempt to combine the Java FX script capabilities with the native integration that the JNA library permits, to create a pure Java widget desktop application.

This application dynamically loads widgets from scripts, applies window transparency and opacity variations depending on their shapes, and can configure the scaling factors.


AWTEnabler is a Java program that allows to enable some disabled GUI components in other Java programs. It is a similar program as WindowsEnabler but for AWT and Swing components.

JVM Compatibility Suite

The JVM Compatibility Suite is a set of projects mainly meant to simplify the development of Java applications that are compatible with the Microsoft Virtual Machine.

It includes a fake JRE to launch Java application using the MS VM from within Eclipse, a lightweight graphical toolkit, and several other utilities.


MasterCL is a Java library which bypasses the common logic of class loading. It allows one to load some classes even if some higher class loader knows how to load them.


IC is a Java library that allows a Java application to check the presence of other running instances. Applications can then permit a maximum number of running instances, exchange data, or control the instances among the virtual machines.


SWTLoader is a launcher for SWT applications that determines the current plateform and displays the supported themes. Once the user has selected a theme, this choice is used everytime the application is launched, except if a theme is added or the current theme is not supported anymore. SWTLoader makes shipping SWT applications easier by simplifying the installation procedures.


The WebStartEx Java library is an answer to one main limitation of current applications deployed using Java Web Start: the impossibility to access resources outside the jar files of the application.


FlexAgent is an SNMP agent that is dynamically loaded from some MIB definitions. It can be administered using a graphical tool, and some logic can be trigguered when getting or setting some values. Configuration can be saved, and it is using a plug-in architecture.


SkinLFOT is a JBuilder Open Tool that allows to apply skins to JBuilder.