Scry.Server.Explorer
0.1.0-beta.4
dotnet add package Scry.Server.Explorer --version 0.1.0-beta.4
NuGet\Install-Package Scry.Server.Explorer -Version 0.1.0-beta.4
<PackageReference Include="Scry.Server.Explorer" Version="0.1.0-beta.4" />
<PackageVersion Include="Scry.Server.Explorer" Version="0.1.0-beta.4" />
<PackageReference Include="Scry.Server.Explorer" />
paket add Scry.Server.Explorer --version 0.1.0-beta.4
#r "nuget: Scry.Server.Explorer, 0.1.0-beta.4"
#:package Scry.Server.Explorer@0.1.0-beta.4
#addin nuget:?package=Scry.Server.Explorer&version=0.1.0-beta.4&prerelease
#tool nuget:?package=Scry.Server.Explorer&version=0.1.0-beta.4&prerelease
Scry.Server.Explorer
An opt-in, GraphiQL-style query explorer for Scry. It serves a self-contained Blazor WebAssembly UI that runs Roslyn in the browser: write strongly-typed C# LINQ against the allow-listed sources with real IntelliSense and diagnostics, see the serialized wire request, execute it, and inspect the results. Only validated requests reach the server.
Map it alongside the query endpoint (it is off unless mapped, and Development-only by default):
app.MapScry("/api/query");
app.MapScryExplorer("/scry");
Then browse to /scry. Configure via the options overload — for example to expose it outside Development behind a custom authorization check:
app.MapScryExplorer(options =>
{
options.Route = "/scry";
options.QueryEndpoint = "/api/query";
options.EnableGuard = _ => _.User.IsInRole("admin");
});
<a id='snippet-explorerOptions'></a>
/// <summary>Sub-path the explorer UI is served under. Default <c>/scry</c>.</summary>
public string Route { get; set; } = "/scry";
/// <summary>The existing <c>MapScry</c> query endpoint the explorer POSTs validated requests to.
/// Default <c>/api/query</c>.</summary>
public string QueryEndpoint { get; set; } = "/api/query";
/// <summary>
/// Decides, per request, whether the explorer is reachable. Defaults to Development-only:
/// the explorer reveals the full queryable schema, so it stays off in production unless a host
/// opts in explicitly (e.g. behind an admin authorization check).
/// </summary>
public Func<HttpContext, bool> EnableGuard { get; set; } = DevelopmentOnly;
/// <summary>
/// Decides, per request, whether the explorer will show the SQL a query would run. Also
/// Development-only by default, and deliberately separate from <see cref="EnableGuard"/>: SQL
/// reveals more than the schema does — real table and column names, and the shape of any row
/// policy that narrowed the query — so opening the explorer to someone does not open this too.
/// </summary>
public Func<HttpContext, bool> EnableSqlPreview { get; set; } = DevelopmentOnly;
<sup><a href='/src/Scry.Server.Explorer/ScryExplorerOptions.cs#L6-L28' title='Snippet source file'>snippet source</a> | <a href='#snippet-explorerOptions' title='Start of snippet'>anchor</a></sup>
Docs: Query explorer
| 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
- Microsoft.EntityFrameworkCore (>= 10.0.11)
- Scry.Server (>= 0.1.0-beta.4)
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 |
|---|---|---|
| 0.1.0-beta.4 | 57 | 8/15/2026 |
| 0.1.0-beta.3 | 70 | 8/2/2026 |
| 0.1.0-beta.2 | 56 | 7/31/2026 |
| 0.1.0-beta.1 | 59 | 7/26/2026 |