Hi.
BWD is a simple 2D UI API to abstract away UI libraries, by defining types and interfaces corresponding to related basic concepts and use cases (UI thread scheduling, windowing and related events, graphics (drawing primitives, text, images, rectangular clipping, translations and 90 degrees rotations), fonts, cursors, and devices (mouse, wheel and keyboard) events).
BWD is meant to serve as a basis for creating either simple 2D UIs directly, or toolkits on top of which UIs can be built.
It's part of Jolikit (https://github.com/jeffhain/jolikit), which also contains lower level APIs BWD makes use of (mainly to abstract away time/scheduling).
Jolikit also contains implementations of BWD on top of various UI libraries (AWT, Swing, JavaFX, SWT, LWJGL3, JOGL/NEWT, QtJambi4.8, Allegro5, SDL2).
To ease installation, I uploaded a zip containing dependencies binaries:
https://sourceforge.net/projects/jolikit/files/release_0.1/jolikit_0_1_deps.zip
I plan to take feedback on BWD for up to one year, before moving to 1.0.