kwui 0.2.0-beta.3

A GUI library with JSX/CSS support
docs.rs failed to build kwui-0.2.0-beta.3
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: kwui-0.2.2

kwui-rs

A small user interface library for daily use. Build utility Gui tool with JSXCSS and Rust, at present it is mainly supported Windows, Android and OpenHarmony support is on the way.

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

Quick Start

  1. Fetch source code
git clone --recurse-submodules https://github.com/wanghoi/kwui-rs.git

2a. Run Win32 example

# Run the mock installer 

cargo run -p installer

2b. Or build Android example apk

# Setup Android development environment, Eg:

set ANDROID_HOME=D:/Android/Sdk

set ANDROID_NDK_HOME=D:/Android/Sdk/ndk/27.0.11718014

set CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=%ANDROID_NDK_HOME%/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android30-clang.cmd


# Build the mock installer 

cmake --preset android-debug

cmake --build --preset android-debug --target installer.APK

Documentation

FAQ

  1. Why another GUI library?
  • Porting server-side Rust code to client-side quickly, to explore and evaluate new technology.
  • Explore end-to-end and server-relay audio and video transport technology.
  • Explore SDWAN technology.