CATEGORY
GUI 3,805 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
wayland-protocolsGenerated API for the officials wayland protocol extensions60,725,094MIT
wayland-scannerWayland Scanner for generating rust APIs from XML wayland protocol files.55,624,560MIT
wayland-clientBindings to the standard C implementation of the wayland protocol, client side.55,456,827MIT
smithay-client-toolkitToolkit for making client wayland applications.51,272,887MIT
winitCross-platform window creation library.46,858,797Apache-2.0
winsafeWindows API and GUI in safe, idiomatic Rust.41,191,560MIT
wayland-protocols-wlrGenerated API for the WLR wayland protocol extensions40,119,204MIT
wayland-cursorBindings to libwayland-cursor.39,253,095MIT
dpiTypes for handling UI scaling36,955,077Apache-2.0 AND MIT
wayland-backendLow-level bindings to the Wayland protocol36,415,019MIT
xcursorA library for loading XCursor themes32,587,156MIT
cursor-iconCross platform cursor icon type27,301,625MIT OR Apache-2.0 OR Zlib
mudaMenu Utilities for Desktop Applications25,483,407Apache-2.0 OR MIT
wryCross-platform WebView rendering library25,271,174Apache-2.0 OR MIT
taoCross-platform window manager library.24,588,074Apache-2.0
wayland-protocols-plasmaGenerated API for the Plasma wayland protocol extensions24,526,083MIT
gtkUNMAINTAINED Rust bindings for the GTK+ 3 library (use gtk4 instead)24,047,649MIT
tauri-utilsUtilities for Tauri23,528,570Apache-2.0 OR MIT
atkUNMAINTAINED Rust bindings for the ATK library23,495,679MIT
tauriMake tiny, secure apps for all desktop platforms with Tauri23,039,042Apache-2.0 OR MIT
gtk3-macrosUNMAINTAINED Rust bindings for the GTK 3 library (use gtk4-macros instead)22,827,509MIT
wayland-csd-frameCommon trait and types for wayland CSD interop22,693,634MIT
tauri-buildbuild time code to pair with https://crates.io/crates/tauri22,662,760Apache-2.0 OR MIT
tauri-macrosMacros for the tauri crate.22,612,581Apache-2.0 OR MIT
tauri-codegencode generation meant to be consumed inside of `tauri` through `tauri-build` or `tauri-macros`22,597,904Apache-2.0 OR MIT
tauri-runtime-wryWry bindings to the Tauri runtime22,541,979Apache-2.0 OR MIT
tauri-runtimeRuntime for Tauri applications22,512,238Apache-2.0 OR MIT
accesskitUI accessibility infrastructure across platforms21,791,519MIT OR Apache-2.0
emathMinimal 2D math library for GUI work21,017,504MIT OR Apache-2.0
tray-iconCreate tray icons for desktop applications20,689,922MIT OR Apache-2.0
eguiAn easy-to-use immediate mode GUI that runs on both web and native20,289,471MIT OR Apache-2.0
epaintMinimal 2D graphics library for GUI work20,227,521MIT OR Apache-2.0
tauri-pluginBuild script and runtime Tauri plugin definitions17,872,637Apache-2.0 OR MIT
wayland-commonsCommon types and structures used by wayland-client and wayland-server.17,731,521MIT
softbufferCross-platform software buffer17,376,752MIT OR Apache-2.0
webkit2gtk-sysRust binding for webkit-gtk library17,307,426MIT
webkit2gtkRust bindings for webkit-gtk library17,264,711MIT
egui-winitBindings for using egui with winit16,923,394MIT OR Apache-2.0
stdwebA standard library for the client-side Web16,450,859MIT/Apache-2.0
egui_glowBindings for using egui natively using the glow library15,798,471MIT OR Apache-2.0
accesskit_winitAccessKit UI accessibility infrastructure: winit adapter15,704,437Apache-2.0
eframeegui framework - write GUI apps that compiles to web and/or natively15,565,745MIT OR Apache-2.0
stdweb-internal-macrosInternal procedural macros for the `stdweb` crate14,864,695MIT/Apache-2.0
stdweb-deriveDerive macros for the `stdweb` crate14,791,888MIT/Apache-2.0
stdweb-internal-runtimeInternal runtime for the `stdweb` crate14,783,338MIT/Apache-2.0
accesskit_consumerAccessKit consumer library (internal)14,224,405MIT OR Apache-2.0
window-vibrancyMake your windows vibrant.14,183,733Apache-2.0 OR MIT
kasuariA rust layout solver for GUIs, based on the Cassowary algorithm.
A fork of the unmaintained cassowary-rs crate with improvments…12,395,201MIT OR Apache-2.0
ashpdXDG portals wrapper in Rust using zbus11,504,565MIT
egui_extrasExtra functionality and widgets for the egui GUI library10,068,945MIT OR Apache-2.0
accesskit_unixAccessKit UI accessibility infrastructure: Linux adapter9,984,767MIT OR Apache-2.0
taffyA flexible UI layout library9,843,976MIT
accesskit_windowsAccessKit UI accessibility infrastructure: Windows adapter9,794,827MIT OR Apache-2.0
accesskit_macosAccessKit UI accessibility infrastructure: macOS adapter9,683,877MIT OR Apache-2.0
egui-wgpuBindings for using egui natively using the wgpu library9,341,943MIT OR Apache-2.0
epaint_default_fontsDefault fonts for use in epaint / egui9,147,595(MIT OR Apache-2.0) AND OFL-1.1 AND Ubuntu-font-1.0
fontdueA simple no_std font parser and rasterizer.7,904,609MIT OR Apache-2.0 OR Zlib
egui_plotImmediate mode plotting for the egui GUI library7,714,430MIT OR Apache-2.0
wayland-protocols-miscGenerated API for misc and deprecated wayland protocol extensions7,500,955MIT
accesskit_atspi_commonAccessKit UI accessibility infrastructure: core AT-SPI translation layer7,445,956MIT OR Apache-2.0
wayland-protocols-experimentalGenerated API for experimental wayland protocol extensions6,748,118MIT
bevyA refreshingly simple data-driven game engine and app framework6,423,782MIT OR Apache-2.0
bevy_internalAn internal Bevy crate used to facilitate optional dynamic linking via the 'dynamic_linking' feature6,272,865MIT OR Apache-2.0
minimadlight Markdown parser6,186,101MIT
yewA framework for creating reliable and efficient web applications4,649,380MIT OR Apache-2.0
egui_dockDocking system for egui - an immediate-mode GUI library for Rust4,549,460MIT
yew-macroA framework for making client-side single-page apps4,531,514MIT OR Apache-2.0
global-hotkeyGlobal hotkeys for Desktop Applications3,861,467Apache-2.0 OR MIT
wayland-eglBindings to libwayland-egl.3,583,391MIT
gtk4Rust bindings of the GTK 4 library3,368,055MIT
gdk4-sysFFI bindings of GDK 43,348,595MIT
gdk4Rust bindings of the GDK 4 library3,345,075MIT
gtk4-sysFFI bindings of GTK 43,306,110MIT
gsk4-sysFFI bindings of GSK 43,298,600MIT
gsk4Rust bindings of the GSK 4 library3,287,999MIT
gtk4-macrosMacros helpers for GTK 4 bindings3,287,587MIT
puffin_httpTCP server/client for puffin profiler data2,894,561MIT OR Apache-2.0
window_clipboardA library to obtain clipboard access from a `raw-window-handle`2,818,711MIT
iced_coreThe essential ideas of iced2,470,788MIT
iced_futuresCommands, subscriptions, and future executors for iced2,393,078MIT
icedA cross-platform GUI library inspired by Elm2,373,855MIT
iced_winitA runtime for iced on top of winit2,368,324MIT
iced_wgpuA renderer for iced on top of wgpu2,343,043MIT
iced_graphicsA bunch of backend-agnostic types that can be leveraged to build a renderer for iced2,325,555MIT
libadwaitaRust bindings for libadwaita1,965,481MIT
printpdfRust library for reading and writing PDF files1,961,031MIT
libadwaita-sysFFI bindings for libadwaita1,957,189MIT
fontiqueFont enumeration and fallback.1,956,953Apache-2.0 OR MIT
parleyParley provides an API for implementing rich text layout.1,936,665Apache-2.0 OR MIT
wayland-serverBindings to the standard C implementation of the wayland protocol, server side.1,927,816MIT
egui_tilesA tiling layout engine for egui with drag-and-drop and resizing1,843,228MIT OR Apache-2.0
crossfontCross platform native font loading and rasterization1,800,812Apache-2.0
iced_widgetThe built-in widgets for iced1,794,318MIT
iced_runtimeA renderer-agnostic runtime for iced1,777,585MIT
iced_rendererThe official renderer for iced1,770,150MIT
iced_tiny_skiaA software renderer for iced on top of tiny-skia1,765,723MIT
cursiveA TUI (Text User Interface) library focused on ease-of-use.1,606,067MIT
egui_commonmarkCommonmark viewer for egui1,515,330MIT OR Apache-2.0
fltkRust bindings for the FLTK GUI library1,455,471MIT
fltk-sysRust bindings for the FLTK GUI library1,449,482MIT
tauri-cliCommand line interface for building Tauri apps1,386,953Apache-2.0 OR MIT
i-slint-coreInternal Slint Runtime Library.1,379,767GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
slintGUI toolkit to efficiently develop fluid graphical user interfaces for embedded devices and desktop applications1,368,030GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
slint-macrosMacro helper for slint crate1,363,178GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
egui_commonmark_backendShared code for egui_commonmark and egui_commonmark_macros1,359,421MIT OR Apache-2.0
bevy-inspector-eguiInspector plugin for the bevy game engine1,344,961MIT OR Apache-2.0
iced_styleThe default set of styles of Iced1,330,958MIT
cursive_coreCore components for the Cursive TUI1,313,264MIT
slint-buildHelper for Slint build script1,295,009GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
yew-routerA router implementation for the Yew framework1,251,651MIT OR Apache-2.0
egui_graphsInteractive graph visualization widget for rust powered by egui1,115,875MIT
egui_tableTable viewer for egui1,112,986MIT OR Apache-2.0
detect-desktop-environmentAutodetect the desktop environment1,090,715MIT
box_drawingA very simple library containing constants for UTF-8 box drawing.1,084,970MIT
wayland-windowA minimalistic window-decorations library built on top of wayland-client.1,084,585MIT
tui-scrollbarA Ratatui scrollbar widget with fractional thumb rendering1,062,461MIT OR Apache-2.0
wayland-kbdKeyboard mapping utility for wayland-client using libxkbcommon.1,056,122MIT
leptos-useCollection of essential Leptos utilities inspired by React-Use / VueUse1,052,453MIT OR Apache-2.0
imgui-sysRaw FFI bindings to dear imgui943,403MIT OR Apache-2.0
walkersslippy map widget for egui941,464MIT
imguiHigh-level Rust bindings to dear imgui937,117MIT OR Apache-2.0
egui_dndA drag and drop library for egui935,640MIT
stretchHigh performance & cross-platform Flexbox implementation827,139non-standard
eyeballAdd observability to your Rust types!821,441MPL-2.0
parley_dataUnicode data for Parley817,949Apache-2.0 OR MIT
eyeball-imObservable collections based on the `im` crate.774,829MPL-2.0
kittestAutomated GUI testing using AccessKit634,497MIT OR Apache-2.0
epiBackend-agnostic interface for writing apps using egui572,235MIT OR Apache-2.0
windows-captureFastest Windows Screen Capture Library For Rust 🔥571,182MIT
relm4An idiomatic GUI library inspired by Elm and based on gtk4-rs570,473Apache-2.0 OR MIT
relm4-macrosAn idiomatic GUI library inspired by Elm and based on gtk4-rs570,394Apache-2.0 OR MIT
conrodDEPRECATED. See `conrod-core`.535,014MIT OR Apache-2.0
tide-serve-dir-macroMacros to serve a directory of static files in tide520,249MIT OR Apache-2.0
egui_kittestTesting library for egui based on kittest and AccessKit504,048MIT OR Apache-2.0
imgui-winit-supportwinit support code for the imgui crate474,270MIT OR Apache-2.0
iced_awAdditional widgets for the Iced GUI library468,992MIT
iced_debugA pluggable API for debugging iced applications458,028MIT
mundyReads various system-level accessibility and UI preferences452,207Apache-2.0
tui-big-textA Ratatui widget for displaying big text in the terminal447,528MIT OR Apache-2.0
iced_programThe definition of an iced program444,526MIT
gtk-layer-shellUNMAINTAINED Save gir-generated wrapper for gtk-layer-shell437,643MIT
yew-hooksHooks for the Yew web framework, inspired by react hook libs like streamich/react-use and alibaba/hooks.437,426Apache-2.0/MIT
gdk4-wayland-sysFFI bindings of GDK4 Wayland436,684MIT
gdk4-waylandRust bindings of the GDK 4 Wayland library436,294MIT
gtk-layer-shell-sysUNMAINTAINED Unsave gir-generated FFI bindings for gtk-layer-shell433,581MIT
gdk4-x11-sysFFI bindings of GDK4 X11421,342MIT
gdk4-x11Rust bindings of the GDK4 X11 library419,322MIT
create-tauri-appRapidly scaffold out a new tauri app project.412,610Apache-2.0 OR MIT
iced_fontsInclude fonts via feature flags in your Iced project!408,033MIT
winit_input_helperProcesses winit events, allowing input state to be queried at any time.406,622MIT
tui-scrollviewA simple scrollable view for Ratatui406,039MIT OR Apache-2.0
egui_gliumBindings for using egui natively using the glium library380,834MIT OR Apache-2.0
dominatorZero-cost ultra-high-performance declarative DOM library using FRP signals377,688MIT
puffin_eguiShow puffin profiler flamegraph in-game using egui375,981MIT OR Apache-2.0
egui_webBindings for compiling egui code to WASM for a web page346,123MIT OR Apache-2.0
cursive-macrosProc-macros for the cursive TUI library.345,203MIT
glifoGlifo provides APIs for efficiently rendering text.344,308Apache-2.0 OR MIT
egui_demo_libExample library for egui342,374MIT OR Apache-2.0
relm4-cssAn idiomatic GUI library inspired by Elm and based on gtk4-rs322,873Apache-2.0 OR MIT
imgui-glium-rendererGlium renderer for the imgui crate313,869MIT OR Apache-2.0
eyeball-im-utilHelpful utilities for `eyeball-im`.307,651MPL-2.0
sycamore-macroproc-macro crate for Sycamore296,235MIT
sycamoreA library for building reactive web apps in Rust and WebAssembly295,387MIT
druidData-oriented Rust UI design toolkit.294,487Apache-2.0
druid-shellPlatform abstracting application shell used for Druid toolkit.291,749Apache-2.0
sycamore-reactiveReactive primitives for Sycamore288,690MIT
rust-fontconfigPure-Rust alternative to font-loader and fontconfig w. minimal dependencies284,534MIT
async-rxUtility functions for async reactive programming.278,517MPL-2.0
conrod_coreAn easy-to-use, 100% Rust, extensible 2D GUI library.268,003MIT OR Apache-2.0
howudoinProgress reporting abstraction264,581MIT
show-imagequickly show images in a window for debugging264,169BSD-2-Clause
relm4-componentsAn idiomatic GUI library inspired by Elm and based on gtk4-rs258,005Apache-2.0 OR MIT
gtk4-layer-shellSafe gir-generated wrapper for gtk4-layer-shell254,480MIT
egui_json_treeAn interactive JSON tree visualiser for egui, with search and highlight functionality.252,658MIT OR Apache-2.0
gl-context-loaderMinimal OpenGL function loader for no_std OpenGL contexts251,711Apache-2.0/MIT
sycamore-coreCore functionality for the SycamoreS248,492MIT
sycamore-webproc-macro crate for Sycamore248,023MIT
gtk4-layer-shell-sysUnsafe gir-generated FFI bindings for gtk4-layer-shell244,606MIT
tauri-driverWebdriver server for Tauri applications243,907Apache-2.0 OR MIT
window-shadowsAdd native shadows to your windows.230,659Apache-2.0 OR MIT
blitz-domBlitz DOM implementation221,495MIT OR Apache-2.0
web-viewRust bindings for webview, a tiny cross-platform library to render web-based GUIs for desktop applications218,367MIT
azul-coreCommon datatypes used for the Azul document object model, shared across all azul-* crates218,231MIT
azul-cssCommon datatypes used for styling applications
using the Azul desktop GUI framework217,391MIT
azul-layoutLayout solver + font and image loader the Azul GUI framework215,030MIT
webview-sysRust native ffi bindings for webview210,131MIT
conrod_winitAn easy-to-use, 100% Rust, extensible 2D GUI library.205,426MIT OR Apache-2.0
gvdbImplementation of the glib gvdb file format201,577MIT OR Apache-2.0
tui-popupA simple popup for ratatui194,633MIT OR Apache-2.0
win7-notificationsSend Windows 10 styled notifications on Windows 7.190,768Apache-2.0 OR MIT
tauri-plugin-prevent-defaultDisable default browser shortcuts190,091MIT
relmAsynchronous, GTK+-based, GUI library, inspired by Elm, written in Rust187,392MIT
yarte_helpersHelper collection for yarte180,449MIT/Apache-2.0
egui_loggerlog implementation for egui180,377MIT
sourceview5-sysFFI bindings for GtkSourceView 5180,239MIT
sourceview5Rust bindings for GtkSourceView 5179,335MIT
blitz-htmlBlitz HTML parser178,897MIT OR Apache-2.0
yarte_deriveProcedural macro package for yarte178,809MIT/Apache-2.0
yarteType-safe, compiled Handlebars178,259MIT/Apache-2.0
dbusmenu-glib-sysFFI bindings to dbusmenu-glib176,878LGPL-3.0-only