Truly cross platform, truly native. multiple backend GUI for rust

Overview

WIP: Sauron-native

a rust UI library that conquers all platforms ranging from desktop to mobile devices. An attempt to create a truly native, truly cross platform UI for your rust applications.

One UI to rule them all

Sauron native extends the sauron web framework which is heavily inspired by The Elm Architecture. Sauron native can target multiple GUI backends.

Currently supported backend

  • gtk
  • html
  • tui

Screenshot

Running the example

git submodule init
git submodule update
cd examples/cross_widget
./run_gtk.sh
./run_terminal.sh
# if you have wasm-pack installed
./start_web.sh

TODO General

  • Depracate itui, in favor of titik which is much simpler to maintain

TODO widgets

  • button
  • checkbox
  • column ( vbox )
  • row ( hbox )
  • container
  • image
  • progress_bar
  • radio
  • scrollable
  • slider
  • space
  • text
  • text_input (textbox)

TODO platforms

Become a patron

You might also like...
Cross-platform native Rust menu library

A cross-platform Rust library for managing the native operating system menus.

A render-backend independant egui backend for sdl2

A Sdl2 + Egui Backend An egui backend for sdl2 unbound to any renderer-backend. You can include it like so: [dependencies] egui_sdl2_platform = "0.1.0

A Rust binding of the wxWidgets cross platform toolkit.

wxRust master: / mac(0.10): This is a Rust binding for the wxWidgets cross platform toolkit. API wxRust API documentation How it works The wxRust libr

A cross-platform Mod Manager for RimWorld intended to work with macOS, linux and Windows

TODOs are available here. Discussions, PRs and Issues are open for anyone who is willing to contribute. rrm Inspired by Spoons rmm. This is a cross-pl

SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.
SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.

SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.

FLTK frontend for Egui WGPU backend.

Egui FLTK Frontend FLTK Frontend for Egui WGPU Backend On linux Debian/Ubuntu, make sure to install the latest main requirements: sudo apt-get update

D3D11 backend for egui library. Presumably for mods/cheats development
D3D11 backend for egui library. Presumably for mods/cheats development

D3D11 backend for egui library. Presumably for mods/cheats development. Currently few features from egui are missing. WIP.

egui backend for D3D9.

egui-d3d9 egui backend for D3D9. Primarily intended for source games like CS:GO and GMod. It's not perfect by far, but it'll do. This is a rewrite of

An easy-to-use, 2D GUI library written entirely in Rust.

Conrod An easy-to-use, 2D GUI library written entirely in Rust. Guide What is Conrod? A Brief Summary Screenshots and Videos Feature Overview Availabl

Comments
  • Improve example

    Improve example

    • pinned nightly version so that you don't need to install it manually (and everyone uses the same version) - feel free to adjust the version, though
    • added commands for git submodule
    • made .sh files executable (shebang (#!) needs to be the 2 first bytes of a file in order for kernel to parse it)
    • removed unnecessary whitespace in the example text
    opened by pzmarzly 1
  • Different letter case scheme

    Different letter case scheme

    DeepinScreenshot_select-area_20190726210145

    Some identifiers in the screenshot above were underlined by the spellchecker as it cannot see word boundaries. It's not that easy for humans, too, asthisexamplestringhopefullyillustrates. I think it would be better to use snake case (text_box, v_box, on_click, on_input)

    enhancement 
    opened by pzmarzly 2
Owner
Jovansonlee Cesar
I'm for hire. If your company uses rust and interested in one of my projects, please recommend me.
Jovansonlee Cesar
A simple, cross-platform GUI automation module for Rust.

AutoPilot AutoPilot is a Rust port of the Python C extension AutoPy, a simple, cross-platform GUI automation library for Python. For more information,

null 271 Dec 27, 2022
A cross-platform GUI library for Rust, inspired by Elm

Iced A cross-platform GUI library for Rust focused on simplicity and type-safety. Inspired by Elm. Features Simple, easy-to-use, batteries-included AP

Héctor Ramón 17.5k Jan 2, 2023
A cross-platform GUI library for Rust focused on simplicity and type-safety

A cross-platform GUI library for Rust, inspired by Elm

Héctor Ramón 17.5k Jan 8, 2023
Cross-platform GUI toolkit written in Rust

Tuix is a cross-platform GUI toolkit written in Rust. The driving principle behind tuix is to be a self-contained, small-as-possible, but still fast,

George Atkinson 166 Dec 13, 2022
A cross-platform GUI toolkit in Rust

NXUI - Native X UI A cross-platform GUI toolkit in Rust NXUI is a GUI toolkit that calls OS native APIs as much as possible to achieve fast operation.

らて 11 Jun 3, 2022
A cross-platform GUI library for Rust, inspired by Elm

Iced A cross-platform GUI library for Rust focused on simplicity and type-safety. Inspired by Elm. Features Simple, easy-to-use, batteries-included AP

null 17.5k Dec 28, 2022
rsautogui aims to be a cross-platform GUI automation rust crate.

rsautogui rsautogui aims to be a cross-platform GUI automation rust crate. It lets you control the mouse and keyboard to automate interactions with ot

null 5 Sep 18, 2022
A single-header ANSI C immediate mode cross-platform GUI library

Nuklear This is a minimal-state, immediate-mode graphical user interface toolkit written in ANSI C and licensed under public domain. It was designed a

Immediate Mode UIs, Nuklear, etc. 6.9k Jan 8, 2023
A lightweight cross-platform system-monitoring fltk gui application based on sysinfo

Sysinfo-gui A lightweight cross-platform system-monitoring fltk gui application based on sysinfo. The UI design is inspired by stacer. The svg icons a

Mohammed Alyousef 22 Dec 31, 2022
Rust bindings to the minimalist, native, cross-platform UI toolkit `libui`

Improved User Interface A cross-platform UI toolkit for Rust based on libui iui: ui-sys: iui is a simple (about 4 kLOC of Rust), small (about 800kb, i

Rust Native UI Group 865 Dec 27, 2022