Client v5: BLE, BLE Hosting, HTTP, Jobs - Linux, MacOS, & Blazor Support! Full AOT, RX on BLE only & MANY other features! Check It Out
Shiny Libraries
The Shiny Templates come pre-configured with the following Shiny libraries. Each is AOT-compatible and built with source generators for zero-reflection performance.
App Essentials
Section titled “App Essentials”| Library | Description |
|---|---|
| MAUI Shell | Shell navigation with ViewModel lifecycle management, source-generated routes, and DI integration |
| Jobs | Periodic and one-shot background tasks that survive app restarts with platform-aware scheduling |
| HTTP Transfers | Resumable background file uploads and downloads with progress monitoring and Azure Blob Storage support |
| Local Notifications | Rich local notifications with channels, scheduling triggers, and platform-specific customization |
| Push Notifications | Native, Firebase, and Azure Notification Hub push providers with a unified delegate model |
| Configuration | JSON platform bundles, platform preferences, and remote configuration |
| Data Sync | Bidirectional JSON sync with outbox / inbox semantics over HTTP and platform-tier background transports |
Device & Sensors
Section titled “Device & Sensors”| Library | Description |
|---|---|
| Bluetooth LE | Full BLE client with scanning, connection management, GATT services, and background operations |
| BLE Hosting | Advertise your device as a BLE peripheral with custom GATT services |
| OBD | On-board diagnostics over Bluetooth LE with extensible command support and custom transports |
| GPS & Geofencing | Foreground and background location tracking with geofence monitoring |
Platform Data
Section titled “Platform Data”| Library | Description |
|---|---|
| Music | Query tracks, browse by genre/decade/playlist, and play music from the device library |
| Health | Cross-platform health data access for HealthKit (iOS) and Health Connect (Android) — 12 metrics including steps, heart rate, calories, sleep, and more |
| Contact Store | Cross-platform device contact access with full CRUD, LINQ queries, and MAUI permission classes |
Speech & AI
Section titled “Speech & AI”| Library | Description |
|---|---|
| Speech (STT/TTS) | Speech-to-text, text-to-speech, audio source, and audio player — MAUI native APIs and Web Speech API in Blazor |
| AI Conversation | Centralized AI service with IChatClient abstraction, wake-word detection, optional message store, and configurable acknowledgement modes — auto-wires Shiny.Speech when enabled |
Controls (MAUI & Blazor)
Section titled “Controls (MAUI & Blazor)”| Library | Description |
|---|---|
| TableView | Settings-style TableView with 14 cell types, cascading styles, sections, and full MVVM support |
| Scheduler | Calendar, agenda timeline, and event list views with shared event provider and custom templates |
| ChatView | Modern chat UI with message bubbles, typing indicators, per-participant colors/avatars, and input bar |
| ImageEditor | Inline image editor with crop, rotate, freehand drawing, text annotations, undo/redo, and export |
| FloatingPanel | Draggable sheet overlay (bottom/top) with snap points, backdrop, and pan gestures — MAUI (uses SheetView on Blazor) |
| Fab & FabMenu | Material-style floating action button and expanding multi-action menu with staggered animations |
| Mermaid Diagrams | Native Mermaid flowchart rendering using pure MAUI Graphics (or Blazor SVG) with Sugiyama layout and pan/zoom |
| Markdown | Render and edit markdown with native controls — read-only viewer and full editor with toolbar |
| Barcodes & QR Codes | Pure-managed 1D/2D barcode and QR code renderer (ZXing.Net, no SkiaSharp) — MAUI and Blazor SVG/PNG output |
| Desktop Controls | Shiny.Maui.Controls.Desktop — Tray Icon, VS-style window Docking, and Touch / Kiosk On-Screen Keyboard for Windows / macOS / MacCatalyst / Linux |
| Kiosk Controls (Blazor) | Shiny.Blazor.Controls.Kiosk — Touch / Kiosk On-Screen Keyboard and Docking for WebAssembly |
| ColorPicker | Full-featured color picker with spectrum view, hue bar, opacity slider, hex input, and popup button mode |
| ImageViewer | Full-screen image overlay with pinch-to-zoom, pan, double-tap zoom, and animated transitions |
| SecurityPin | PIN entry with individually rendered cells, optional character masking, and full styling control |
| PillView | Status badge/label control with 6 preset themes, custom colors, and WCAG-accessible contrast |
Database
Section titled “Database”| Library | Description |
|---|---|
| Document DB | Store and query .NET objects as JSON documents with full CRUD, LINQ querying, projections, aggregates, and transactions — 10 providers including SQLite, SQL Server, PostgreSQL, Cosmos DB, MongoDB, LiteDB, DuckDB, and browser IndexedDB |
| Spatial | Dependency-free spatial database using SQLite R*Tree indexing with custom geometry algorithms |
Core & Infrastructure
Section titled “Core & Infrastructure”| Library | Description |
|---|---|
| Mediator | Mediator pattern implementation with middleware, caching, offline support, HTTP endpoints, and AOT source generation |
| Reflector | Source-generated property access, JSON serialization, and assembly info generation |
| Dependency Injection | Attribute-driven, source-generated service registrations with category-based conditional registration |
| Stores | Cross-platform key/value store abstraction with persistent service binding ([Bind] attribute pattern) |
| Localization Generator | Strongly-typed localization classes generated from .resx files |
| MAUI Hosting | Modular MAUI app configuration with IMauiModule, static service access, and platform lifecycle dispatch |
| Web Hosting | ASP.NET Core infrastructure modules for common server-side patterns |
Aspire
Section titled “Aspire”| Library | Description |
|---|---|
| Orleans | Simplified Orleans hosting for Aspire with streamlined AppHost configuration and Silo setup |
| Gluetun VPN | Gluetun VPN container as a first-class Aspire resource with Docker Compose publish support |