Home

Awesome

Current status

Currently main focus is on testing an idea of autogenerating bindings to Fyne.

Quick demo

https://www.youtube.com/watch?v=YmYQRPvkSpM

Live GUI over console demo

What is Rye language

Rye is a high level, dynamic programming language based on ideas from Rebol, flavored by Factor, Linux shells and Golang. It's still an experiment in language design, but it should slowly become more and more useful in real world.

It features a Golang based interpreter and console and could also be seen as (modest) Go's scripting companion as Go's libraries are quite easy to integrate, and Rye can be embedded into Go programs as a scripting or config language.

I believe that as language becomes higher level it starts touching the user interface boundary, besides being a language we have great emphasis on interactive use (Rye shell) where we will explore that.

Rye language repository | Rye website | Reddit group

What is Rye-Front

Rye-Front is an external extension of Rye language focused on frontend technologies like: GUI, Game engine, Graphics, Browsers ...

Why a separate repository

Status

Rye-front is in early development. We are focusing on Fyne GUI at first.

Modules

Fyne - GUI ⭐⭐

Fyne is crossplatform GUI framework with it's own OpenGL renderer inspired by material design.

Build and test

In rye-front directory run:

# build rye with fyne in bin/fyne/rye
./buildfyne

# Try the hello example
bin/fyne/rye examples/fyne/button.rye

# Try the feedback example
bin/fyne/rye examples/fyne/feedback.rye

# Try the Live GUI demo
bin/fyne/rye examples/fyne/live.rye

Example

Fyne Feedback example

rye .needs { fyne }

do\in fyne {

	cont: container 'vbox vals {
		label "Send us feedback:"
		multiline-entry :ent
		button "Send" { ent .get-text |printv "Sending: {}" }
	}
	
	app .new-window "Feedback"
	|set-content cont
	|show-and-run

}

More about Fyne

Fyne website

Implemented widgets

Ebitengine

Ebitengine website

Webview

Webview github page