SqliteInspector.Maui
0.1.1
dotnet add package SqliteInspector.Maui --version 0.1.1
NuGet\Install-Package SqliteInspector.Maui -Version 0.1.1
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="SqliteInspector.Maui" Version="0.1.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SqliteInspector.Maui" Version="0.1.1" />
<PackageReference Include="SqliteInspector.Maui" />
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 SqliteInspector.Maui --version 0.1.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: SqliteInspector.Maui, 0.1.1"
#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 SqliteInspector.Maui@0.1.1
#: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=SqliteInspector.Maui&version=0.1.1
#tool nuget:?package=SqliteInspector.Maui&version=0.1.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
SqliteInspector.Maui
A lightweight SQLite database inspector for .NET MAUI apps. Browse tables, run queries, and monitor changes via a built-in web UI during development.
Features
- Built-in web UI — browse tables, view schemas, and paginate rows from your browser
- Live change detection — SSE-based auto-refresh when database content changes
- Ad-hoc queries — run read-only SELECT queries from the inspector UI
- Zero footprint in Release — all registration is wrapped in
#if DEBUG; Release builds get a no-op - Port negotiation — automatically tries the next port if the default is busy
- No dependencies on your app — standalone package with no coupling to your domain models
Installation
dotnet add package SqliteInspector.Maui
Quick Start
In your MauiProgram.cs:
using SqliteInspector.Maui;
var builder = MauiApp.CreateBuilder();
builder.UseMauiApp<App>();
// Register the inspector (DEBUG only — no-op in Release)
builder.Services.AddSqliteInspector(opts =>
{
opts.DatabasePath = Path.Combine(FileSystem.AppDataDirectory, "app.db");
});
var app = builder.Build();
// Start the HTTP server (DEBUG only — no-op in Release)
app.Services.StartSqliteInspector();
return app;
Then open your browser to http://localhost:8271 while the app is running in Debug mode.
Configuration
| Property | Type | Default | Description |
|---|---|---|---|
DatabasePath |
string |
"" |
Required. Absolute path to the SQLite database file. |
Port |
int |
8271 |
HTTP port for the inspector web UI. |
MaxPortRetries |
int |
5 |
Number of consecutive ports to try if the default is busy. |
AutoRefreshSeconds |
int |
2 |
Polling interval (seconds) for change detection fallback. |
API Endpoints
The inspector exposes these endpoints on http://localhost:{port}:
| Method | Path | Description |
|---|---|---|
| GET | / |
Inspector web UI (single-page HTML) |
| GET | /api/info |
Database file path, size, SQLite version |
| GET | /api/tables |
List all tables with row counts |
| GET | /api/tables/{name} |
Paginated rows (?offset=0&limit=100) |
| GET | /api/tables/{name}/schema |
Column definitions (name, type, PK, nullable) |
| GET | /api/query?sql=SELECT... |
Execute a read-only SQL query |
| GET | /api/changes |
SSE stream of table change events |
How It Works
AddSqliteInspector()registersSqliteInspectorOptionsandDbInspectorServerin DI (DEBUG only)StartSqliteInspector()starts an EmbedIOWebServeron the configured port- Each request opens a fresh SQLite connection (
Pooling=false,Mode=ReadWrite) to avoid stale WAL snapshots - A
ChangeDetectorpolls the database and broadcasts SSE events to connected browsers - Only
SELECTqueries are allowed — mutation keywords are rejected
Requirements
- .NET 10+
- Any MAUI target platform (Android, iOS, macOS, Windows)
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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- EmbedIO (>= 3.5.2)
- Microsoft.Data.Sqlite (>= 10.0.3)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
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.1 | 111 | 3/15/2026 |
| 0.1.1-preview.2 | 61 | 3/15/2026 |
| 0.1.0 | 106 | 3/15/2026 |
| 0.1.0-preview.2 | 63 | 3/15/2026 |