CsWebUi 2.5.0-beta.4.8
dotnet add package CsWebUi --version 2.5.0-beta.4.8
NuGet\Install-Package CsWebUi -Version 2.5.0-beta.4.8
<PackageReference Include="CsWebUi" Version="2.5.0-beta.4.8" />
<PackageVersion Include="CsWebUi" Version="2.5.0-beta.4.8" />
<PackageReference Include="CsWebUi" />
paket add CsWebUi --version 2.5.0-beta.4.8
#r "nuget: CsWebUi, 2.5.0-beta.4.8"
#:package CsWebUi@2.5.0-beta.4.8
#addin nuget:?package=CsWebUi&version=2.5.0-beta.4.8&prerelease
#tool nuget:?package=CsWebUi&version=2.5.0-beta.4.8&prerelease
CS-WebUI
Build lightweight, cross-platform .NET desktop interfaces with HTML, CSS, and
JavaScript. CsWebUi manages WebUI windows and callbacks so your application
can use an installed browser or a supported WebView without taking on a native
interop surface.
Install
dotnet add package CsWebUi --prerelease
CsWebUi targets .NET 10 and brings in CsWebUi.Native automatically. It is
currently a prerelease package following the WebUI 2.5 beta ABI. Release
packages include verified official WebUI native libraries for win-x64,
linux-x64, linux-arm64, osx-x64, and osx-arm64.
Browser mode needs a supported installed browser. Embedded-WebView mode needs
the platform runtime: WebView2 on Windows, WebKitGTK on Linux, or WebKit on
macOS. To choose the browser executable, set CSWEBUI_BROWSER_PATH or call
WebUiApplication.SetBrowserPath; WebUI itself reads no browser environment
variable. When a window cannot be shown, WebUiShowException names the browser
that was tried and why it failed.
First window
using CsWebUi;
using var window = new WebUiWindow();
window.Bind("multiply", static e =>
WebUiResult.FromInt64(e.GetInt64() * e.GetInt64(1)));
window.Show("""
<!doctype html>
<script src="webui.js"></script>
<button onclick="multiply(6, 7).then(alert)">Multiply</button>
""");
WebUiApplication.Wait();
WebUiWindow.Dispose() destroys the native window after active managed
callbacks finish. Use BindAsync when a JavaScript call needs an asynchronous
ValueTask<WebUiResult> response. After WebUiApplication.Exit() or Clean(),
WebUI no longer waits for pending asynchronous replies, and CS-WebUI discards
any that complete later.
Choose this package
Use CsWebUi for application code. It is the ergonomic layer for windows,
events, callbacks, JavaScript evaluation, browser and server configuration,
custom file responses, browser selection, event blocking, frameless or
transparent WebViews, custom browser parameters, and in-memory icons. Use
CsWebUi.Native only when you
need direct, unsafe access to the full WebUI C ABI.
For Windows win-x64 NativeAOT publishing, set CsWebUiStaticLink to true
alongside PublishAot; static linking is opt-in and bypasses dynamic native
library overrides. For all other deployments, the normal bundled native asset
is used. To load a custom native library, call
CsWebUi.Native.WebUiNativeLibrary.SetLibraryPath before the first WebUI call,
or set CSWEBUI_NATIVE_LIBRARY.
Learn and get help
- Repository documentation
- Basic callback example
- High-level API example
- WebUI documentation
- Report an issue or request support
CS-WebUI is MIT licensed. See the license and WebUI notices for bundled-component terms.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- CsWebUi.Native (>= 2.5.0-beta.4.8)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on CsWebUi:
| Package | Downloads |
|---|---|
|
Runic.Application.Views.CsWebUi
CS-WebUI host adapter for Runic Window and View applications. |
|
|
Runic.Application.CsWebUi
CS-WebUI host adapter for Runic Window and View applications. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.5.0-beta.4.8 | 4,194 | 10/23/2026 |
| 2.5.0-beta.4.7 | 5,732 | 10/14/2026 |
| 2.5.0-beta.4.6 | 5,276 | 10/5/2026 |
| 2.5.0-beta.4.5 | 857 | 9/22/2026 |
| 2.5.0-beta.4.4 | 1,734 | 8/7/2026 |
| 2.5.0-beta.4.3 | 488 | 7/24/2026 |
| 2.5.0-beta.4.2 | 89 | 7/16/2026 |
| 2.5.0-beta.4.1 | 86 | 7/12/2026 |