Rask.WebPush 0.20.1-alpha.0.228

This is a prerelease version of Rask.WebPush.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Rask.WebPush --version 0.20.1-alpha.0.228
                    
NuGet\Install-Package Rask.WebPush -Version 0.20.1-alpha.0.228
                    
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.WebPush" Version="0.20.1-alpha.0.228" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Rask.WebPush" Version="0.20.1-alpha.0.228" />
                    
Directory.Packages.props
<PackageReference Include="Rask.WebPush" />
                    
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.WebPush --version 0.20.1-alpha.0.228
                    
#r "nuget: Rask.WebPush, 0.20.1-alpha.0.228"
                    
#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.WebPush@0.20.1-alpha.0.228
                    
#: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.WebPush&version=0.20.1-alpha.0.228&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Rask.WebPush&version=0.20.1-alpha.0.228&prerelease
                    
Install as a Cake Tool

Rask.WebPush

Server-side Web Push sender. Signs VAPID and encrypts (RFC 8291, aes128gcm) push messages, then POSTs them to a browser PushSubscription endpoint. It is the send half that pairs with Rask.Wasm's IWebPush client — but it is transport-neutral: usable from a Rask Server app or any ASP.NET backend behind a WASM PWA.

No external dependencies beyond Microsoft.Extensions.* — all crypto is in-box System.Security.Cryptography.

Install

dotnet add package Rask.WebPush

Use

builder.Services.AddRaskWebPush(o =>
{
    o.VapidKeys = VapidKeys.Generate();          // generate once, then load from config/secrets
    o.Subject   = "mailto:admin@example.com";    // a contact the push service can reach
});

// ... inject IWebPush, then given a PushSubscription the browser sent you:
var result = await sender.SendAsync(
    subscription,
    new WebPushMessage { Title = "Hello", Body = "from the server" },
    ct);

// Inspect the result to prune dead subscriptions:
if (result.ShouldDelete) await store.RemoveAsync(subscription);

Notes

  • Standards-based — VAPID (RFC 8292) auth + RFC 8291 aes128gcm payload encryption; interops with any standard browser Push service (FCM, Mozilla, WNS).
  • Zero external deps — ECDH, HKDF and AES-GCM come from System.Security.Cryptography.
  • Generate a VAPID key pair once with VapidKeys.Generate() and keep the private key server-side; hand the public key to the browser subscription.
  • SendAsync returns a WebPushResult whose ShouldDelete / ShouldRetry flags map the push service's response to the action to take on the subscription.

Full documentation: https://github.com/pal-tamas/rask/blob/main/docs/pwa.md

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.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Rask.WebPush:

Package Downloads
Rask

The one reference a Rask application needs, server or browser. On net10.0 it brings the ASP.NET host plus every battery — database, mediator, background jobs, transactional email, cache, outbox, operator dashboard, durable logs, Web Push, and SQLite snapshots and continuous backup — with RaskApp.Create(args) as the entry point. On net10.0-browser it brings the WebAssembly host, the source-generated mediator, the query cache and remote dispatch. Everything referenced is wired and on; app.Configure(c => c.Jobs.Off()) is how an app does without one. Reference Rask.Server for a lean host with no database.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.20.1-alpha.0.238 0 9/7/2026
0.20.1-alpha.0.237 0 9/7/2026
0.20.1-alpha.0.236 0 9/7/2026
0.20.1-alpha.0.235 0 9/7/2026
0.20.1-alpha.0.234 0 9/7/2026
0.20.1-alpha.0.233 0 9/7/2026
0.20.1-alpha.0.232 0 9/7/2026
0.20.1-alpha.0.231 0 9/7/2026
0.20.1-alpha.0.230 0 9/7/2026
0.20.1-alpha.0.229 0 9/7/2026
0.20.1-alpha.0.228 35 9/4/2026
0.20.1-alpha.0.227 31 9/4/2026
0.20.1-alpha.0.226 38 9/4/2026
0.20.1-alpha.0.225 40 9/4/2026
0.20.1-alpha.0.224 41 9/4/2026
0.20.1-alpha.0.223 39 9/4/2026
0.20.1-alpha.0.221 39 9/4/2026
0.20.1-alpha.0.220 38 9/4/2026
0.20.1-alpha.0.217 32 9/4/2026
0.20.0 107 8/6/2026
Loading failed