Skip to content

deft-ui/deft

Repository files navigation

Introduction

Deft is a framework for building desktop and mobile applications with Rust and JavaScript.

crates.io

Features

  • Hybrid programming with Rust and JavaScript
  • Non-webview core
  • Unified JavaScript engine and rendering engine
  • Themes support
  • Support React/Vue/Solid or any framework that supports custom render

Limits

  • Not all CSS properties are supported, see documentation for more details.
  • Accessibility is not yet available.
  • JavaScript debugger is not yet available.

Component Gallery

Live Demo(WASM)

Quick Start

npm create deft@latest hello-deft
cd hello-deft
npm install
npm run dev

Documentation

Demos

Platforms

Platform Versions Supported
Windows 10+
Linux X11 & Wayland
MacOS 10.12+
HarmonyOS 5+ ✅experimental
Android 6+ ✅experimental
iOS - ✅experimental
WebAssembly - ✅experimental

Develop

Prerequisites

Make sure Rust, Node.js and Clang14+ installed.

Some extra packages need to be installed on Linux.

apt install build-essential libssl-dev libclang-dev libc++-dev \
    xorg-dev libxcb-xfixes0-dev libxcb-shape0-dev libdbus-1-dev \
    libasound2-dev libegl-dev libgles-dev librust-wayland-egl-dev

Run demo

Native:

cd examples/gallery
cargo run

Wasm:

Make sure that Emscripten SDK is installed.

cd examples/gallery
cargo build --target wasm32-unknown-emscripten --release
python3 -m http.server

Visit http://localhost:8000/web/ to preview.

License

MIT

About

Build cross-platform applications with Rust and JavaScript

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages