Skip to content

Introduction

iOS & Android

Shiny for the client side has its own hosting model to allow it to work across the whole .NET client side ecosystem by providing a common platform with all the services you need out-of-the-box. Shiny is more of a framework with plugins built around it, than it is a “one off” plugin for a XF or MAUI application. It is recommended not recommended you take a dependency on Shiny for a single plugin.

The best way to get started with Shiny application is to use out templates

dotnet new install Shiny.Templates

However, if you have an existing application, please try our App Builder to help generate all of the pieces you need.

Shiny Modules currently include

  • Bluetooth LE Client & Host
  • Background Jobs
  • Local & Push Notifications
  • HTTP Transfers (background) with progress
  • GPS & Geofencing
  • and more…!

Mediator (.NET Client Apps & Server)

Mediator is a behavioral design pattern that lets you reduce chaotic dependencies between objects. The pattern restricts direct communications between the objects and forces them to collaborate only via a mediator object.

Shiny Mediator is a mediator pattern implementation, but for built with ALL .NET apps in mind. We provide a TON of middleware out-of-box to get you up and rolling with hardly any effort whatsoever. Checkout our Getting Started guide to see how easy it is. Imagine using 1 line of code to add offline, caching, or validation to your code!

  • .NET MAUI - all platforms
  • Uno Platform - all platforms
  • Dapper, ASP.NET, and more
  • MVVM Frameworks like Prism, ReactiveUI, & .NET MAUI Shell
  • Blazor - Work In Progress
  • Any other .NET platform - but you’ll have to come up with your own “event collector” for the out-of-state stuff

Extensions

Helps you write code faster while also making it faster, more maintainable, and Shinier than ever before!

  • Dependency Injection - Source generate all attributed classes to a single add file - saves you the boilerplate
  • Stores - Key/value store with support for Android/iOS/Windows - Preferences & Secure Storage, Web - Local Storage & Session Storage, and In Memory
  • Reflector - Source generator that removes the need for reflection in your code
  • Localization Generator - Source generator that generates a strongly typed class for your localization files