Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ivanceras/sauron-native
Truly cross platform, truly native. multiple backend GUI for rust
https://github.com/ivanceras/sauron-native
gtk gui html native terminal tui
Last synced: 4 days ago
JSON representation
Truly cross platform, truly native. multiple backend GUI for rust
- Host: GitHub
- URL: https://github.com/ivanceras/sauron-native
- Owner: ivanceras
- License: apache-2.0
- Created: 2019-07-25T23:31:19.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-04-09T04:31:51.000Z (almost 4 years ago)
- Last Synced: 2024-04-13T20:54:10.318Z (9 months ago)
- Topics: gtk, gui, html, native, terminal, tui
- Language: Rust
- Homepage:
- Size: 3.46 MB
- Stars: 632
- Watchers: 27
- Forks: 15
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE-APACHE
Awesome Lists containing this project
- awesome-rust - ivanceras/sauron-native - A truly native and cross platform GUI library. One unified code can be run as native GUI, Html Web and TUI. (Libraries / GUI)
- awesome-rust-cn - ivanceras/sauron-native - 一个真正的本地和跨平台GUI库。一个统一的代码可以作为本地GUI、Html (库 Libraries / GUI GUI)
- awesome-list - sauron-native
- awesome-code-for-gamedev - sauron-native - conquers all platforms ranging from desktop to mobile devices. An attempt to create a truly native, truly cross platform UI for your rust applications. (UI / Tween)
README
## 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](https://github.com/ivanceras/sauron) web framework
which is heavily inspired by [The Elm Architecture](https://guide.elm-lang.org/architecture/).
Sauron native can target multiple GUI backends.## Currently supported backend
- gtk
- html
- tui## Screenshot
![](https://raw.githubusercontent.com/ivanceras/sauron-native/master/assets/sauron-native-gtk.png)
![](https://raw.githubusercontent.com/ivanceras/sauron-native/master/assets/sauron-native-windows.png)
![](https://raw.githubusercontent.com/ivanceras/sauron-native/master/assets/sauron-native-html.png)
![](https://raw.githubusercontent.com/ivanceras/sauron-native/master/assets/sauron-native-tui.png)
## Running the example
```bash
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
- [X] button
- [x] checkbox
- [X] column ( vbox )
- [x] row ( hbox )
- [ ] container
- [x] image
- [ ] progress_bar
- [x] radio
- [ ] scrollable
- [ ] slider
- [ ] space
- [x] text
- [X] text_input (textbox)## TODO platforms
- [X] Linux (gtk)
- [X] Windows ([native-windows-gui](https://github.com/gabdube/native-windows-gu))
- [ ] Mac ([appki-rs](https://github.com/ryanmcgrath/appkit-rs))- [X] Browser(html)
- [X] TUI[![Become a patron](https://c5.patreon.com/external/logo/become_a_patron_button.png)](https://www.patreon.com/ivanceras)