LibUI
glimmer-dsl-tk
LibUI | glimmer-dsl-tk | |
---|---|---|
6 | 5 | |
198 | 29 | |
- | - | |
7.4 | 4.9 | |
15 days ago | 3 months ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
LibUI
-
Text generation with GPT-2 in Ruby
The tokenizers gem is written in Rust, so installation requires Rust. If Rust isn't available, blingfire can be used instead.
- Ruby meta-hacking: Looking under the hood (2016)
- Faster Ruby: Thoughts from the Outside — Matthew Gaudet
-
Glimmer DSL for LibUI Beta Release
LibUI is a thin Ruby wrapper around libui, a relatively new C GUI library that renders native controls on every platform (similar to SWT, but without the heavy weight of the Java Virtual Machine).
-
Can someone point me in the direction of the simplest way to get a ruby program to create a bitmap backed window in Linux?
Ah quick update: I think libui has everything you need
- Need help with a user interface
glimmer-dsl-tk
-
Glimmer DSL for Tk Hello, Progressbar & Theme!
# From: https://github.com/AndyObtiva/glimmer-dsl-tk#hello-progressbar require 'glimmer-dsl-tk' class HelloProgressbar include Glimmer attr_accessor :progress_value, :maximum_value, :delay_value def initialize self.progress_value = 0 self.maximum_value = 100 self.delay_value = 0.01 Thread.new do loop do self.progress_value = (self.progress_value.to_i + 1) % (maximum_value.to_i + 1) sleep(delay_value) # yields to main thread end end end def launch root { text 'Hello, Progressbar!' progressbar { grid row: 0, column: 0, columnspan: 3 orient 'horizontal' length 200 mode 'indeterminate' maximum <= [self, :maximum_value] value <= [self, :progress_value] } label { grid row: 1, column: 0 text 'Value' } label { grid row: 1, column: 1 text 'Maximum' } label { grid row: 1, column: 2 text 'Delay in Seconds' } spinbox { grid row: 2, column: 0 from 0.0 to 100.0 increment 1.0 format '%0f' text <=> [self, :progress_value, on_read: :to_i, on_write: :to_i] } spinbox { grid row: 2, column: 1 from 1.0 to 100.0 increment 1.0 format '%0f' text <=> [self, :maximum_value, on_read: :to_i, on_write: :to_i] } spinbox { grid row: 2, column: 2 from 0.01 to 1.0 increment 0.1 format '%0.2f' text <=> [self, :delay_value, on_write: ->(val) {[val.to_f, 1.0].min}] } progressbar { grid row: 3, column: 0, columnspan: 3 orient 'horizontal' length 200 mode 'determinate' maximum <= [self, :maximum_value] value <= [self, :progress_value] } progressbar { grid row: 4, column: 0, columnspan: 3 orient 'vertical' length 200 mode 'determinate' maximum <= [self, :maximum_value] value <= [self, :progress_value] } }.open end end HelloProgressbar.new.launch
-
2021 Was The Year of The Ruby Desktop!!!
Thankfully, community members contribute back to Glimmer too, such as vin1antme's big 2021 contribution of lightweight declarative drag and drop support for Glimmer DSL for Tk.
-
Glimmer DSL for GTK
glimmer-dsl-tk: Glimmer DSL for Tk (MRI Ruby Desktop Development GUI Library)
-
Cryptopunks GUI by Glimmer DSL for Tk
Cryptopunks GUI is a Graphical User Interface for the famous cryptopunks Ruby gem, built with Glimmer DSL for Tk.
-
Glimmer DSL for LibUI Beta Release
The main trade-off in using Glimmer DSL for LibUI as opposed to Glimmer DSL for SWT or Glimmer DSL for Tk is the fact that SWT and Tk are more mature than mid-alpha libui as GUI toolkits. Still, if there is only a need to build a small simple application, Glimmer DSL for LibUI could be a good convenient choice due to having zero prerequisites beyond the dependencies included in the Ruby gem. Also, just like Glimmer DSL for Tk, its apps start instantly and have a small memory footprint. LibUI is a promising new GUI toolkit that might prove quite worthy in the future.
What are some alternatives?
models - A collection of pre-trained, state-of-the-art models in the ONNX format
Glimmer - DSL Framework consisting of a DSL Engine and a Data-Binding Library used in Glimmer DSL for SWT (JRuby Desktop Development GUI Framework), Glimmer DSL for Opal (Pure Ruby Web GUI), Glimmer DSL for LibUI (Prerequisite-Free Ruby Desktop Development GUI Library), Glimmer DSL for Tk (Ruby Tk Desktop Development GUI Library), Glimmer DSL for GTK (Ruby-GNOME Desktop Development GUI Library), Glimmer DSL for XML (& HTML), and Glimmer DSL for CSS
onnxruntime-ruby - Run ONNX models in Ruby
glimmer-dsl-swing - Glimmer DSL for Swing (JRuby Swing Desktop Development GUI Library) - Enables development of desktop applications using Java Swing and Java 2D, including vector graphics and AWT geometry.
glimmer-dsl-swt - Glimmer DSL for SWT (JRuby Desktop Development Cross-Platform Native GUI Framework) - The Quickest Way From Zero To GUI - If You Liked Shoes, You'll Love Glimmer!
Gladiator (Glimmer Editor) - Gladiator (short for Glimmer Editor) is a Glimmer DSL for SWT sample project under on-going development that demonstrates how to build a text editor in Ruby using Glimmer DSL for SWT (JRuby Desktop Development GUI Library). It is not intended to be a full-fledged editor by any means, yet mostly a fun educational exercise in using Glimmer. Gladiator is also a personal tool for shaping an editor exactly the way I like, with all the keyboard shortcuts I prefer. I leave building truly professional text editors to software tooling experts who would hopefully use Glimmer one day. Otherwise, I have been happily using Gladiator to develop all my open-source projects since May of 2020.
blingfire-ruby - High speed text tokenization for Ruby
RubyGnome2 - A set of bindings for the GNOME libraries to use from Ruby.
libui - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
glimmer-dsl-libui - Glimmer DSL for LibUI - Prerequisite-Free Ruby Desktop Development Cross-Platform Native GUI Library - The Quickest Way From Zero To GUI - If You Liked Shoes, You'll Love Glimmer! - No need to pre-install any prerequisites. Just install the gem and have platform-independent GUI that just works on Mac, Windows, and Linux.