Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. wry

wry

Apache-2.0Rustwry-v0.24.12

A cross-platform WebView rendering library in Rust for building desktop and mobile applications.

GitHubGitHub
4.8k stars441 forks0 contributors

What is wry?

Wry is a cross-platform WebView rendering library written in Rust that allows developers to embed web content into native desktop and mobile applications. It provides a unified API to create WebViews across Windows, macOS, Linux, Android, and iOS, abstracting away the underlying platform-specific WebView engines like WebView2, WebKit, and WebKitGTK.

Target Audience

Rust developers building cross-platform desktop or mobile applications that need to embed web content, particularly those using the Tauri framework or windowing libraries like tao and winit.

Value Proposition

Developers choose Wry for its type-safe Rust API, consistent cross-platform behavior, and tight integration with the Rust ecosystem. It offers fine-grained control over WebView features while maintaining minimal overhead compared to heavier Electron-like solutions.

Overview

Cross-platform WebView library in Rust for Tauri.

Use Cases

Best For

  • Embedding web-based UIs in Rust desktop applications
  • Building cross-platform apps with Tauri framework
  • Creating native mobile apps with web content using Rust
  • Developing lightweight alternatives to Electron apps
  • Integrating web views into existing Rust windowing applications
  • Prototyping desktop apps with web technologies and Rust backend

Not Ideal For

  • Projects requiring a full-stack JavaScript framework with built-in UI components and tooling
  • Teams unfamiliar with Rust or unwilling to manage native dependencies like WebKitGTK on Linux
  • Applications targeting only web browsers without native app deployment needs
  • Developers wanting drag-and-drop WebView creation without handling event loops and windowing libraries

Pros & Cons

Pros

Cross-Platform Consistency

Provides a unified Rust API for WebViews on Windows, macOS, Linux, Android, and iOS, abstracting platform-specific engines like WebView2 and WebKit for consistent behavior.

Windowing Library Integration

Seamlessly integrates with popular Rust windowing libraries such as tao and winit via the HasWindowHandle trait, enabling flexible and native UI setups.

Custom Protocol Support

Allows defining custom URL schemes through WebViewBuilder::with_custom_protocol, facilitating asset loading and specialized request handling without server overhead.

Feature Flag Flexibility

Offers compile-time flags for optional features like devtools and transparent backgrounds, letting developers optimize builds for specific platforms and use cases.

Cons

Linux Setup Complexity

Requires manual GTK initialization and event loop integration for winit, and child webview support is limited on Wayland, adding significant development overhead.

Android Integration Overhead

Demands setting environment variables, using specific macros like wry::android_binding!, and inheriting from AppCompatActivity, making setup cumbersome and error-prone.

Platform-Specific Restrictions

Features like devtools on macOS use private APIs, which can hinder App Store submissions, and behavior may vary unpredictably across different WebView engines.

Frequently Asked Questions

Quick Stats

Stars4,757
Forks441
Contributors0
Open Issues117
Last commit14 days ago
CreatedSince 2020

Tags

#webview#desktop-apps#gtk#cross-platform#webkit#rust#mobile-apps

Built With

W
WebKitGTK
W
WebView2
w
winit
W
WebKit
R
Rust

Included in

Rust56.6k
Auto-fetched 1 day ago

Related Projects

TauriTauri

Build smaller, faster, and more secure desktop and mobile applications with a web frontend.

Stars105,771
Forks3,550
Last commit1 day ago
DioxusDioxus

Fullstack app framework for web, desktop, and mobile.

Stars35,800
Forks1,633
Last commit1 day ago
icediced

A cross-platform GUI library for Rust, inspired by Elm

Stars30,294
Forks1,563
Last commit1 day ago
eguiegui

egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native

Stars28,834
Forks2,018
Last commit2 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub