Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
V

vgtk

> 编程语言
Open source

A declarative desktop UI framework for Rust built on GTK and Gtk-rs

1.1K stars0 likes2 views
WebsiteGitHub

About

A declarative desktop UI framework for Rust built on GTK and Gtk-rs

vgtk

A declarative desktop UI framework for Rust built on GTK and Gtk-rs.

At A Glance

  • A clean, functional component model inspired by the Elm architecture, Redux and Yew.
  • A declarative DSL for composing GTK widgets inspired by React and JSX, using virtual "DOM" diffing for efficient updates.
  • Fully cross platform with a native look and feel for Linux, Windows and macOS.
  • Built on Rust's Futures using GLib's event loop, giving you async/await superpowers cleanly integrated with the GTK event model.
  • Absolutely no need for an embedded browser engine, unless you really want one.

Documentation

  • API docs (latest release)
  • Tutorial

Show Me!

…

Installation

You'll need to ensure GTK is installed and usable on your system before you can use vgtk. Please consult the Gtk documentation for detailed instructions. It can be especially involved on Windows, but if you follow their instructions carefully, it does eventually work.

Getting Started

You can use cargo generate to start a vgtk project:

bash
cargo generate --git https://github.com/bodil/cargo-template-vgtk

Alternatively, if you don't want to install cargo generate, you can clone the template repo and edit the Cargo.toml file manually to fit your project.

To run your app, enter the project folder and type cargo run, and marvel at the little window which eventually appears and what wonders you could fill it with.

Examples

See the examples folder for a collection of example applications, including a complete TodoMVC implementation. To try out the TodoMVC example, clone the vgtk repo and issue cargo run --bin todomvc from the project root directory.

Licence

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public Licence as published by the Free Software Foundation, either version 3 of the Licence, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public Licence for more details.

You should have received a copy of the GNU Lesser General Public Licence along with this program. If not, see .

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rust

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言