Skip to content

jnoortheen/gui-experiments

Repository files navigation

Rust GUI Experiments

This workspace contains minimal experiments with various Rust GUI frameworks.

Memory Footprint & Binary Size Comparison

Here is a quick comparison of the memory usage (Resident Set Size) and compiled release binary size for each framework. These measurements were taken by running each basic example application natively.

Framework Binary Size Memory (RSS) Virtual Mem (VSZ) Unique Mem (USS) Notes
cxx-qt (rust-ui-cxx-qt) 3 MB 66.89 MB 425,514 MB 11.6 MB Qt integration in Rust via CXX and QML
objc2 (rust-ui-objc2) 1 MB 69.92 MB 425,325 MB 14.3 MB Using raw objc2 AppKit bindings
iui (rust-ui-iui) 1 MB 78.12 MB 425,474 MB 16.0 MB
druid (rust-ui-druid) 2 MB 82.17 MB 425,480 MB 17.4 MB
wxdragon (rust-ui-wxdragon) 8 MB 62.17 MB 425,335 MB 22.2 MB Using static wxWidgets bindings
fltk (rust-ui-fltk) 2 MB 92.17 MB 425,488 MB 25.4 MB Using static FLTK C++ bindings
pyside6 (python-ui-pyside) N/A 110.42 MB 425,550 MB 36.6 MB Python PySide6 bindings (no compilation)
slint (rust-ui-slint) 4 MB 102.25 MB 425,479 MB 37.0 MB Using winit software renderer
vizia (rust-ui-vizia) 22 MB 105.02 MB 425,701 MB 45.6 MB Declarative UI framework with Skia backend
eframe (eframe_template) 4 MB 99.67 MB 425,517 MB 60.4 MB
iced (rust-ui-iced) 8 MB 90.89 MB 425,544 MB 66.0 MB
relm4 (rust-ui-gtk) 1 MB 97.11 MB 425,511 MB 66.3 MB Built with relm4 (requires gtk4 system deps)
freya (rust-ui-freya) 22 MB 97.02 MB 425,581 MB 67.0 MB React-like UI using Dioxus & Skia renderer
dearpygui (python-ui-dearpygui) N/A 100.77 MB 425,523 MB 80.3 MB Python Immediate Mode GUI
gpui (rust-ui-gpui) N/A Build Failed Build Failed Build Failed Requires full Xcode for metal compiler

About

check various GUI framewords from Rust and Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors