lineCode / kwui-rs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

kwui

A cross-platform GUI library for Rust focused on simplicity and fast development of small tools. Inspired by sciter.

Features

  • Builtin JavaScript engine, and CSS parser
  • React Hooks alike functional components API
  • Easy interop between Rust and JavaScript
  • Cross-platform support (Windows, Android)

Documentation

FAQ

  1. Why another GUI library?
  • Porting server-side Rust code to client-side quickly, to explore and evaluate new technology.
  • Porting tools to mobile platforms quickly.

Example - Hello world

import { useState } from "Keact";

function HelloWorld(props, kids) {
    let [n, setN] = useState(0);
    return <button onclick={() => setN(n + 1)}>{`Click ${n} times`}</button>;
}

app.showDialog({
    title: "Hello World",
	root: <HelloWorld />,
	stylesheet: css`
	button { margin: 10px; padding: 4px; background-color: orange; }
	button:hover { background-color: orangered; }
    `
});

Gallery

VoIP Test tool

image

Remote Desktop

image

Installer

image

Android examples

image

image

About

License:Other


Languages

Language:Rust 98.9%Language:CMake 0.9%Language:JavaScript 0.2%