MintPlayer.Spark.AllFeatures
10.0.0-preview.65
See the version list below for details.
dotnet add package MintPlayer.Spark.AllFeatures --version 10.0.0-preview.65
NuGet\Install-Package MintPlayer.Spark.AllFeatures -Version 10.0.0-preview.65
<PackageReference Include="MintPlayer.Spark.AllFeatures" Version="10.0.0-preview.65" />
<PackageVersion Include="MintPlayer.Spark.AllFeatures" Version="10.0.0-preview.65" />
<PackageReference Include="MintPlayer.Spark.AllFeatures" />
paket add MintPlayer.Spark.AllFeatures --version 10.0.0-preview.65
#r "nuget: MintPlayer.Spark.AllFeatures, 10.0.0-preview.65"
#:package MintPlayer.Spark.AllFeatures@10.0.0-preview.65
#addin nuget:?package=MintPlayer.Spark.AllFeatures&version=10.0.0-preview.65&prerelease
#tool nuget:?package=MintPlayer.Spark.AllFeatures&version=10.0.0-preview.65&prerelease
MintPlayer.Spark.AllFeatures
The all-in-one package for MintPlayer.Spark. Reference this single package and a source generator wires up the entire framework — CRUD, authorization, messaging, replication, and cron — through three calls: AddSparkFull / UseSparkFull / MapSparkFull.
Full design and rationale: PRD-AllFeatures.
Installation
dotnet add package MintPlayer.Spark.AllFeatures
Installing the package also installs the bundled source generators (they ship in the package's analyzers/ folder), so no separate generator reference is needed.
Quick Start
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSparkFull(builder.Configuration);
var app = builder.Build();
app.UseRouting();
app.UseSparkFull();
app.MapSparkFull();
app.Run();
That's the whole wiring. The source generator discovers your SparkContext, SparkUser, Actions, Recipients, Custom Actions, and Cron jobs at compile time — no generic type parameters, no manual AddActions()/AddRecipients()/AddCronJobs() calls.
AddSparkFull— registers Spark + every feature it detects in your project (and the discovered Actions/Recipients/Custom Actions/Cron jobs).UseSparkFull()— adds the Spark middleware pipeline. Model synchronization moved to the builder phase: callbuilder.SynchronizeSparkModelsIfRequested(args)beforebuilder.Build().MapSparkFull— maps all Spark + Identity endpoints.
What's bundled
Referencing MintPlayer.Spark.AllFeatures transitively brings in:
| Package | Provides |
|---|---|
MintPlayer.Spark |
Core CRUD framework, PersistentObject pipeline, endpoints |
MintPlayer.Spark.Authorization |
ASP.NET Core Identity + security.json group-based access control |
MintPlayer.Spark.Messaging |
Durable RavenDB message bus (pulls in the subscription worker) |
MintPlayer.Spark.Replication |
Cross-module ETL replication |
MintPlayer.Spark.Cron |
Multi-node-safe cron-scheduled background jobs |
MintPlayer.Spark.SourceGenerators + …AllFeatures.SourceGenerators |
Compile-time DI registration + the AddSparkFull/UseSparkFull/MapSparkFull emission |
GitHub webhooks (MintPlayer.Spark.Webhooks.GitHub) and the typed MintPlayer.Spark.Client SDK are not bundled — add them explicitly when needed.
Configuration
Pass a SparkFullOptions delegate to opt into and configure individual features. Every property is optional; unset features use their defaults (and replication/rate-limiting stay off until configured).
builder.Services.AddSparkFull(builder.Configuration, options =>
{
options.Replication = opt =>
{
opt.ModuleName = "Fleet";
opt.ModuleUrl = "https://localhost:5003";
};
// Enable the rate limiter with default limits (150 requests / 10 s, partitioned by client IP).
options.RateLimiter = _ => { };
});
| Option | Configures |
|---|---|
Authorization |
Group-based authorization (security.json behavior). |
Identity |
ASP.NET Core Identity options (password rules, lockout, …). |
IdentityProviders |
External login providers (Google, Microsoft, OIDC, …). |
Messaging |
The durable message bus. |
Replication |
Cross-module ETL replication (off unless set). |
RateLimiter |
The /spark/ rate limiter (off unless set; _ => { } enables defaults). |
Requirements
- .NET 10.0+
- RavenDB 6.2+
- An
IDocumentStore(configured fromSpark:RavenDbinappsettings.json)
License
MIT
| 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
- MintPlayer.Spark (>= 10.0.0-preview.65)
- MintPlayer.Spark.Authorization (>= 10.0.0-preview.65)
- MintPlayer.Spark.Cron (>= 10.0.0-preview.65)
- MintPlayer.Spark.Messaging (>= 10.0.0-preview.65)
- MintPlayer.Spark.Migrations (>= 10.0.0-preview.65)
- MintPlayer.Spark.Replication (>= 10.0.0-preview.65)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.0-preview.80 | 32 | 9/10/2026 |
| 10.0.0-preview.79 | 42 | 9/9/2026 |
| 10.0.0-preview.78 | 36 | 9/9/2026 |
| 10.0.0-preview.77 | 34 | 9/9/2026 |
| 10.0.0-preview.76 | 34 | 9/9/2026 |
| 10.0.0-preview.75 | 51 | 9/7/2026 |
| 10.0.0-preview.74 | 52 | 9/7/2026 |
| 10.0.0-preview.73 | 56 | 9/7/2026 |
| 10.0.0-preview.72 | 55 | 9/6/2026 |
| 10.0.0-preview.71 | 63 | 9/3/2026 |
| 10.0.0-preview.70 | 53 | 9/2/2026 |
| 10.0.0-preview.69 | 48 | 9/1/2026 |
| 10.0.0-preview.68 | 58 | 8/29/2026 |
| 10.0.0-preview.67 | 60 | 8/29/2026 |
| 10.0.0-preview.65 | 57 | 8/28/2026 |
| 10.0.0-preview.64 | 70 | 8/24/2026 |
| 10.0.0-preview.63 | 64 | 8/23/2026 |
| 10.0.0-preview.62 | 68 | 8/23/2026 |
| 10.0.0-preview.60 | 65 | 8/21/2026 |
| 10.0.0-preview.59 | 60 | 8/21/2026 |