A GUI widget toolkit and Graphics library for SVG

Oea.svg is a library for building SVG interactive web applications. It provides three
packages: Java.js, Draw2D.svg and Swing.svg, that makes building SVG apps a breeze.

Source on Github


This package container a number of core Java classes that was required to implement both, Draw2D.svg and Swing.svg. Two Java packages have been ported, AWT and Util. AWT classes included Event and Geom namespaces while Util package included generic classes such as Hastable, Vector, Enumeration and many other useful code.

For a full list of what has been included, click the link below.


The svgDraw2D package provides a higher level of abstraction to Javascript developers to manipulate SVG graphics independently from the DOM API. It also provides capabilities for drawing sophisticated two-dimensional shapes, working with fonts, text and text layout, controlling colours; and it features layering management, styled tool tips and desktop canvas.

Graphics Canvas
Graphics acts as a graphical container that can be used to generate SVG drawing primitives.

DEMO: Shapes

Graphics Canvas is used for drawing lines, images, rectangles, ovals and other drawing primitives..

DEMO: Draggables

Check-out Hotdraw.js (Live Demo), a framework for developing 2-dimensional structured drawing editors that's built with Oea.svg.


Swing.svg was inspired by the unofficial code name of the project that developed Java Foundational Classes (JFC).

Graphical User Interface

Swing.svg offers classes to help in developing GUI components (See all widgets Live). There are two main sets of components in Swing.svg: Top Level Containers (e.g. Panel and Window) and Basic Components (e.g. Button and ScrollBox).

Look and Feel

The Swing.svg Package has adapted a look-and-feel similar to that of MS-Windows (Calculator Demo).This can be easily changed with more fresh and modern look-and-feel designs


Swing.svg features a fully functioning Textbox component with a courser, and support for mouse and keyboard events. This compoenent can be configured with different font types and sizes, customized selection box and clipboard support.


A full fludged application for developing 2-dimensional structured drawing editors built with Swing.svg. It is used to build editors for various 2D drawings such as UML tools and schematic diagrams. Check out Hotdraw.js or on Github

List widgets
This component presents the user with a group of items displayed in one column to chose from.
Variety of designs
Lists can be presented as text only, text with image or image only.
Elegant layout
Titled borders are useful components that come with Swing.svg with internal layout managers.
Edges and Spaces
Titled borders aren't just useful for drawings lines and elgent edges but also providing titles and embty spaces around other widgets.
Swing.svg provides a variety of button types, and with built-in Look & Feel support, buttons can be built in different types and styles.
Context Menu
A graphics menu can be attached to any Swing.svg compoenent and can be shown upon user interaction, such as a mouse right-click mouse.
Dropdowns / Combo Boxes
Support various text sizes and font-types. Can be setup with text only, image only or a mix of the two.
Color ComboBox
Very useful widget that allows the user to chose a color from a selected list.
Finally, Browser.js, is built on Oea.svg to layout XML languages such as MathML, HTML inside SVG documents. Also, check the Live Demo
Toronto, On
Bay St, M5S2B2.
Copyright © Web Semantics, Inc. 2002 - 2016