Skip to content
Shiny.NET
Shiny MAUI Shell v7 - App Links, App Shortcuts, & Navigation Interception!Shortcut me to it

Welcome to Shiny.NET

Shiny.NET

The hard parts of your app,
already solved.

Everything the platform makes hard: Bluetooth, background jobs, push, location, a document database, speech and AI, an HTTP server that runs inside your MAUI app, 70+ UI controls, and plenty more. Thirty-plus libraries that own the platform code, the permissions and the background execution — so your time goes to the app your users actually asked for.

From back end to front end
  • Windows
  • macOS
  • Linux
  • iOS
  • Android
  • Web
40M+
NuGet downloads
30+
libraries
70+
UI controls
AOT
trim-clean

Shipping in production at

SpeedyDockPoolMathMoultrie
Read what their teams say

Libraries

Thirty-plus packages, grouped by the problem they solve. Every one runs on .NET 9 and later, AOT and trimming clean.

Foundation6 libraries

The building blocks under every Shiny app — hosting, messaging, DI and source generators that keep you AOT-clean.

Explore Foundation
Hardware & Connectivity8 libraries

Radios, sensors and the local network — Bluetooth, GPS, beacons, Wi-Fi and discovery behind one API.

Explore Hardware & Connectivity
Device Data4 libraries

The data the OS already owns — music, health, contacts and calendars — with permissions handled for you.

Explore Device Data
AI & Intelligence5 libraries

Conversation, speech, and on-device recognition of faces, voices and documents.

Explore AI & Intelligence
Background & Delivery5 libraries

Work that keeps running when your app isn't on screen, and the notifications that bring users back.

Explore Background & Delivery
MAUI App4 libraries

Navigation, modular hosting, configuration and permissions — the plumbing of a .NET MAUI app.

Explore MAUI App
UI Controls

70+ native controls for .NET MAUI and Blazor, sharing one theme system — no WebViews.

Browse every control
Data & Storage4 libraries

Store, query, sync and persist data — on the device and in the cloud, with no ORM and no migrations.

Explore Data & Storage
Server & Cloud5 libraries

An HTTP server that runs anywhere .NET does, push dispatch from your backend, and .NET Aspire integrations.

Explore Server & Cloud
Powered by Microsoft.Extensions.AI

Build AI Into Your Apps

Turn your contracts, services, routes, and data into AI-callable tools — or drop in a complete voice assistant. Source-generated, AOT-safe function calling that works across mobile, desktop, web, and server.

AI ConversationsA complete conversational service — chat, speech-to-text, text-to-speech, and wake word behind one interface. Swap OpenAI, Azure, Ollama, or Copilot freely.ExploreShell NavigationGenerated AITool instances let an AI discover your routes, infer parameters from natural language, and navigate to the right page.ExploreMediatorExpose request and command contracts as AI-callable tools — AIFunction wrappers and JSON schemas generated automatically from your attributes.ExploreDependency InjectionTag a service interface and source-generate fully typed, reflection-free AIFunction tools, all registered with a single call.ExploreDocument DBVector / ANN search across pgvector, SQL Server 2025, Cosmos DiskANN, Mongo Atlas, DuckDB vss, and sqlite-vec — plus LLM-callable tool functions, structured filters, and auto-embed on insert via Microsoft.Extensions.AI.ExploreHealthExpose HealthKit and Health Connect data as AI-callable tools — let an agent read steps, heart rate, sleep, and more, or log workouts and nutrition, with opt-in, read-only-by-default capabilities.ExploreContactsLet an agent search the device address book, look up a contact, and — when you opt-in to write — create, update, or delete contacts. Read-only by default.ExploreCalendarLet an agent list device calendars, search events in a date window, and — with per-operation write opt-in — create, update, or delete events. Read-only by default.ExploreRemindersTurn local notifications into reminder tools — an agent can list pending reminders and, with write opt-in, schedule one-time or daily reminders and cancel them.ExploreLocationGive an agent read-only GPS awareness — where the user is, plus great-circle distance and rough travel-time estimates to any destination.ExploreMusicLet an agent search and browse the device music library, pick a track for a mood, control playback, and manage playlists — with opt-in tool areas and structured JSON results.Explore

AI Coding Assistant Skills

Get contextual code generation and best practices directly in your IDE

Every Shiny library has an AI skill that understands its APIs, patterns, and conventions. These skills work with Claude Code and GitHub Copilot to help you scaffold projects, generate code, and follow best practices.

Browse all AI skills and installation instructions →


70+ controls, two hosts, one theme contract

Native .NET MAUI and Blazor components out of the same design system — no WebViews, no per-platform forks.


Trusted In Production

Companies building real products with Shiny.NET

Boat launch scheduling for drystack marinas — iOS, Android and web since 2016

Shiny isn't just a tool for SpeedyDock; it's a cornerstone of our mobile app development.
  • Permissions
  • Local Notifications
  • Geofencing
  • Firebase Push
Read the full story

SpeedyDock is an essential application for drystack marinas, boat clubs, and their clientele, streamlining the process of scheduling and monitoring boat launch requests, reservations, and additional services. It offers a user-friendly alternative to the frequent calls customers used to make, enabling electronic scheduling around the clock. Since its initial release in 2016, SpeedyDock has been accessible across iOS, Android, and web platforms, seamlessly integrating Xamarin and Shiny to manage native functionalities.

A core component of SpeedyDock's efficiency is Shiny. It powers the app's capability to work with permissions requests, local notifications, geofencing, and Firebase push, ensuring customers are consistently informed about their request statuses. For marina operators, these timely notifications are instrumental in enhancing service quality when customers set foot on the premises. Shiny has expertly bridged the gap between iOS and Android, offering a structured way to organize and share code, which, in the absence of such a tool, would be intricate due to variances across platforms and different OS versions. It has streamlined our development process for new features and minimized the edge case bugs typically associated with varying Android versions.

Shiny isn't just a tool for SpeedyDock; it's a cornerstone of our mobile app development. Its integration has empowered us to deliver a top-tier app with a native experience. Looking ahead, we're eager to continue our journey with Shiny, leveraging its capabilities for upcoming projects and refining the SpeedyDock experience. It has undeniably been a key factor in our app's success story.

Travis WolfeCEO, SpeedyDock

Pool care for hundreds of thousands of pool owners

If you're building a .NET MAUI app and you're not using Shiny, you're making your life harder than it needs to be.
  • .NET MAUI
  • iOS
  • Android
Read the full story

PoolMath is the go-to pool care app for hundreds of thousands of pool owners, and Shiny has been a critical part of our stack from the beginning. Running on .NET MAUI across iOS & Android, Shiny handles the native plumbing that would take months to build and maintain on our own. It just works, and it works well.

Beyond PoolMath, I see Shiny's impact across the entire .NET MAUI ecosystem every day in my role at Microsoft. Shiny fills real gaps in the platform — areas where developers would otherwise be writing fragile, platform-specific code. It's become one of those libraries that the community leans on because it solves hard problems cleanly, and it's been instrumental in making .NET MAUI a viable choice for production mobile apps that need serious native integration.

If you're building a .NET MAUI app and you're not using Shiny, you're making your life harder than it needs to be.

Jonathan DickCEO PoolMath · Principal Manager, Microsoft .NET MAUI

Cellular trail cameras, feeders and land management tools

What would have been months of platform-specific work across iOS and Android gets reduced to clean, shared code that we can build on with confidence.
  • Background Ops
  • Device Comms
  • Notifications
Read the full story

At Moultrie, we build mobile apps that connect hunters and landowners to our cellular trail cameras, feeders, and land management tools. Our apps run on .NET MAUI and lean heavily on several Shiny libraries to deliver the kind of native experience our customers expect — reliable background operations, seamless device communication, and responsive notifications even when cellular connectivity is spotty.

Shiny has been instrumental to our product development. What would have been months of platform-specific work across iOS and Android gets reduced to clean, shared code that we can build on with confidence. The breadth of the library suite means we're not stitching together a dozen different packages with different conventions — Shiny gives us a cohesive foundation that covers our needs and lets our team focus on the features that matter to our users.

For any team building production .NET MAUI apps that need to go beyond the basics, Shiny is the library suite you want in your toolbox.

Tommy BaggettPrincipal Software Architect, Moultrie

Using Shiny in production?

We'd love to hear about it. Share your story and have your company logo featured here — it shows the rest of the community what's possible with Shiny.NET.

Tell us about it

The Company Behind Shiny

Modernizing businesses with technology

Shiny.NET isn’t a side project — it’s the open-source foundation of the consulting work we do every day. ShinySoft builds and maintains the entire Shiny suite (40M+ NuGet downloads and counting), which means the same people who ship your product also own the libraries underneath it. Bugs get fixed by the maintainer, not filed into a queue.

Fractional CTOSenior technical leadership — architecture, strategy, roadmaps, and mentoring your team without a full-time hire.
Team AugmentationSenior engineers embedded alongside your team to deliver features and level up the people around them.
Idea to ProductBusiness analysis that turns a concept into a scoped, buildable plan before a line of code is written.
AI ImplementationCapturing data, moving it reliably, storing it in a queryable shape, and integrating models responsibly.
Mobile & Cross-PlatformProduction .NET MAUI, iOS, and Android apps — built on the same Shiny libraries documented here.
IoT & BluetoothDevice fleet management and hardware integration, backed by years of real-world BLE experience.
Fleet & Field OperationsLocation tracking and telematics for teams that work away from a desk.

Behind Shiny

The person who maintains these libraries, and the show he records every week. You always know who is on the other end of an issue.

Allan RitchieAllan RitchieCreator & maintainer of Shiny.NET10× Microsoft MVPOpen Source Maintainer

A software engineer with 25+ years specializing in .NET architecture across cloud, mobile, desktop and web. Building cross-platform .NET libraries since the early Xamarin days — those packages have now been downloaded over 40 million times on NuGet.

25+
years in .NET
10×
Microsoft MVP
40M+
NuGet downloads

Need help integrating Shiny, or consulting support?

New episode every week

Gone .NET

Allan RitchieJon Dick

.NET deep dives, library walkthroughs and community discussions — the two of them working through the same problems these libraries were built to solve.

Watch on YouTube