New Glimmer DSL for LibUI Apps: RubyCrumbler and Rubio-Radio
Tags: ruby, desktop, gui, libui
Published: 2022-06-25 18:31:44

Every once in a while, I get approached by people who ask a lot of questions about my [Glimmer](https://github.com/AndyObtiva/glimmer) Ruby gems, but never complete any work in them, which is quite surprising given the fact that it takes less than a minute to run a [Glimmer](https://github.com/AndyObtiva/glimmer) sample, less than 10 minutes to write one, less than an hour to build a small desktop app, and less than a day to build an MVP (Minimum Viable Product) app.

That is why I am very happy to learn that a couple of apps have been recently built with [Glimmer DSL for LibUI](https://github.com/AndyObtiva/glimmer-dsl-libui) by open-source developers. 

I am particularly impressed by the fact that the developers of those apps fully went the distance by walking the walk, not just talking the talk, especially given that the developers of the first app (RubyCrumbler) were brand new to [Glimmer DSL for LibUI](https://github.com/AndyObtiva/glimmer-dsl-libui) and had to exercise great problem solving skills to finish their app on time for their needs.

## RubyCrumbler:

https://github.com/joh-ga/RubyCrumbler

### Description: 

A simple script to download, that provides a GUI desktop application written in Ruby to apply common Natural Language Processing (NLP) tasks on your English or German text files.

### Architecture:

![ruby crumbler architecture](https://raw.githubusercontent.com/joh-ga/RubyCrumbler/43bf06a8dc118f2e5c9eac252f3b7158fb00b5fe/img/rubycrumbler_pipeline.png)

### Implementation:

The app is mostly built with [Glimmer DSL for LibUI](https://github.com/AndyObtiva/glimmer-dsl-libui), but it also uses one feature from Tk that was not supported in LibUI at the time of development: Select Directory Dialog (it is supported in [the next LibUI release](https://github.com/libui-ng/libui-ng/blob/master/CHANGELOG.md)). Props to the developers for their creative solution that ended up mixing two GUI toolkits successfully!

### Screenshot:

![ruby crumbler](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e2kcb7sipy0p7sg8r7kx.png)

## Rubio-Radio:

https://github.com/kojix2/rubio-radio

### Description:

A small, simple Radio desktop app leveraging the [RadioBrowser](https://www.radio-browser.info/) API. It displays the top 500 radio stations initially, which can be filtered with a search field.

### Video Demo:

![rubio radio](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3yrwh8vot1x4uaenk47a.gif)

If you have completed any desktop apps using [Glimmer](https://github.com/AndyObtiva/glimmer) Ruby gems, please hit me up in a comment, Issue/Pull-Request, or on [Gitter chat](https://gitter.im/AndyObtiva/glimmer) in order for me to add your app to the list of apps built with Glimmer (e.g [Glimmer DSL for LibUI Applications](https://github.com/AndyObtiva/glimmer-dsl-libui#applications), [Glimmer DSL for Tk Applications](https://github.com/AndyObtiva/glimmer-dsl-tk#applications), or [Glimmer DSL for SWT Applications](https://github.com/AndyObtiva/glimmer-dsl-swt#in-production)). Your app does not have to be open-source, but providing a screenshot or video demo would be great in order to give others an idea about your project.

[Glimmer On!](https://github.com/AndyObtiva/glimmer)