Semantic UI Framework (JetFace)

Semantic UI Framework is a productivity framework uses xml files to describe UI structure and metadata descriptions (Java annotations or xml files) to describe details of UI and data binding. Framework supports tracking of changes and features rich undo redo support. Also framework includes tooling support for tag libraries creation and WTP based editor for editing GUI description files.

Semantic UI Framework allows you to quickly build interactive, Java-based rich client applications based on SWT/JFace. (more rendering backends are planned later).

Main features:

  • uses XML to describe components and layout and annotations to describe data metamodel and validation
  • can be integrated in any RCP-based Java project
  • POJOs is only one of possible kinds of data model, RDF graphs and XML documents are also supported
  • built in support for change tracking and undo/redo
  • smart layout model
  • supports creation of extensible GUI from scratch(allows adding of extension points inside GUI interfaces and injecting UI fragments into this points)
  • focused on data oriented applications and is driven by formula that model should be driving factor for GUI
  • includes extensible set of domain specific blocks and elements

How this project may be used and when it is profitable to use it?

According to our experience Semantic UI Framework is a good choice in the following cases:

  • You are starting development of new RCP Application or Eclipse Plugin in which will contain a lot of GUI elements
  • You want to create working UI prototype and you need it fast.
  • You are planning to implement major rework or extension of existing application GUI.

Screencast (Shows one of our tutorials) 
Tutorials and Snippets 
IDE support 
Tag Reference 
High level road map 

Current project state: 
Currently project is on alpha stage. Current stable release version is 1.0 and we are actively using it internally in our projects. 

Project is licensed under 
Eclipse Public License v1.0 

Currently project is located under 

User: guest 
Password: 12345