These aren't written in D, but they are *for* D (or any other non-C++ language in need of its own canonical, language-native GUI). They export a C API for maximum ease of use.

OpenWL[1] - cross-platform top-level windowing library, with native menus, events, clipboard/DnD.

OpenDL[2] - cross-platform drawing library (with Quartz2D/CoreText-compatible API), built on the native APIs for each platform: Quartz2D/CoreText for Mac, Direct2D/DirectWrite for Windows, and GTK/Pango for Linux.

There is still plenty of work to be done on these, but they're ready to make public and start getting some feedback / bug reports / etc.

Right now only Windows/Mac/Linux are (equally!) tested/supported, and I'll have to focus on those for the time being to really polish these libraries, but I fully intend to port them to more niche platforms in the future.

Why? I know there are some people who want to start GUI projects with their language of choice (D/Nim/Haskell/Rust/etc), but trying to lay the foundation to abstract away platform differences is a big, annoying detour for people who just want to get started. So I did all that annoying work because I'm a weird dude and find this kind of thing enjoyable ... to an extent :)

You can ask any questions here, or on the Gitter[3] I've created for both projects:

[1] https://github.com/dewf/openwl
[2] https://github.com/dewf/opendl
[3] https://gitter.im/GUImakers/OpenWL-DL?utm_source=share-link&utm_medium=link&utm_campaign=share-link



Reply via email to