Rask.Web 0.23.1-alpha.0.126

This is a prerelease version of Rask.Web.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Rask.Web --version 0.23.1-alpha.0.126
                    
NuGet\Install-Package Rask.Web -Version 0.23.1-alpha.0.126
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Rask.Web" Version="0.23.1-alpha.0.126" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Rask.Web" Version="0.23.1-alpha.0.126" />
                    
Directory.Packages.props
<PackageReference Include="Rask.Web" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Rask.Web --version 0.23.1-alpha.0.126
                    
#r "nuget: Rask.Web, 0.23.1-alpha.0.126"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Rask.Web@0.23.1-alpha.0.126
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Rask.Web&version=0.23.1-alpha.0.126&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Rask.Web&version=0.23.1-alpha.0.126&prerelease
                    
Install as a Cake Tool

Rask.Web

Every web API the browser ships, in C#, generated from MDN. MDN's globals and interfaces, with MDN's names:

using Rask.Web;

await Navigator.Clipboard.WriteText("hi");
var dark = await Window.MatchMedia("(prefers-color-scheme: dark)").Matches;
await LocalStorage.SetItem("theme", "dark");

await using var mql = await Window.MatchMedia("(min-width: 800px)");   // kept: a handle, disposed with the scope
var wide = await mql.Matches;
  • One round trip per await. Navigator.Clipboard.WriteText(…) records the path and runs it in the browser once; nothing crosses the wire until you await.
  • An object you keep is a handle. Awaiting a proxy (await Window.MatchMedia(q)), or a member whose promise resolves to an object, keeps that object in the browser until you dispose of it.
  • MDN's names, no Async suffix, and each member's doc comment gives its browser support and links to MDN and the spec. IsSupported asks the browser whether it has one: await Navigator.Clipboard.IsSupported.
  • Both hosts. On the server host each chain runs over the page's socket; in WebAssembly, in-process. Call it from an event handler or OnRendered, where the page is live. What only WebAssembly can run — a call that needs the user's click in progress (Navigator.Share, Notification.RequestPermission), WebGL, WebGPU — comes with Rask.Wasm, so a server app cannot call it by mistake.
  • The DOM stays Rask's. Nothing that returns or rewrites DOM nodes is generated; use an element ref for an element's own members.

Part of Rask. Docs: browser APIs.

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • Rask (>= 0.23.1-alpha.0.126)

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Rask.Web:

Package Downloads
Rask.Wasm

The Rask browser host: runs a Rask app's C# components client-side on .NET WebAssembly, with the client halves of the batteries — the mediator and query cache, remote dispatch, accounts, validation and the component kit — on by default. Ships the JS boot scripts, the page shell, and the MSBuild integration that stages them into the published bundle — and, opted in, prerenders every route to static HTML with a sitemap.xml at publish, so a static host serves real pages to visitors and crawlers. Depends on Rask, the shared core.

Rask.Server

The ASP.NET host for Rask, a full-stack .NET web framework, with every battery: database (SQLite, PostgreSQL or SQL Server, picked by Rask:Database:Provider), mediator and query cache, accounts, background jobs, transactional email, cache, file storage, outbox, operator dashboard, durable logs, Web Push, SQLite snapshots and continuous backup. Renders Rask components with live updates over a WebSocket. RaskApp.Create(args).Run<App>() is the whole Program.cs, and RaskApp.Create(args).Serve() the whole server of a WebAssembly client; app.Configure(c => c.Jobs.Off()) is how an app does without one. Depends on Rask, the shared core.

Rask.SQLite.Browser

Runs Microsoft.Data.Sqlite (and Entity Framework Core on top of it) inside a browser WebAssembly app, with the database persisted across reloads. The database file lives in the WASM runtime's in-memory filesystem; this package restores it from IndexedDB at boot and writes it back on a schedule and on page-hide, using SQLite's Online Backup API (never an unsafe file copy) via Rask.SQLite.Snapshots. A Web Lock elects one tab as the owner, so several open tabs cannot write over each other. Register `AddRaskBrowserSqlite("app")` and point your DbContext at `BrowserSqlite.ConnectionString("app")` — the same registration you would write on the server. Add `UseRaskFullTextSearch()` from Rask.SQLite.EntityFrameworkCore and Rask.Data's full-text search (`HasFullTextSearch`, `Search(text)`) runs on FTS5 in the browser too.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.23.1-alpha.0.133 30 10/2/2026
0.23.1-alpha.0.132 33 10/2/2026
0.23.1-alpha.0.131 25 10/2/2026
0.23.1-alpha.0.130 26 10/2/2026
0.23.1-alpha.0.129 28 10/2/2026
0.23.1-alpha.0.128 30 10/2/2026
0.23.1-alpha.0.127 33 10/2/2026
0.23.1-alpha.0.126 29 10/2/2026
0.23.1-alpha.0.125 30 10/2/2026
0.23.1-alpha.0.123 34 10/2/2026
0.23.1-alpha.0.122 34 10/1/2026
0.23.1-alpha.0.121 37 10/1/2026
0.23.1-alpha.0.117 32 10/1/2026
0.23.1-alpha.0.116 31 9/30/2026
0.23.1-alpha.0.115 40 9/30/2026
0.23.1-alpha.0.114 35 9/30/2026
0.23.1-alpha.0.113 40 10/1/2026
0.23.1-alpha.0.110 36 10/1/2026
0.23.1-alpha.0.108 34 9/30/2026
0.23.1-alpha.0.106 34 9/30/2026
Loading failed