My trip from UWP development to cross-platform development for a small audio application [Part 1]

In this article I will go over my journey of building an application that runs on multiple platforms. My original application was a classic UWP application and then I decided that I wanted my application to work on other devices.
This article will be broken into 4 parts:
- [Part 1] What I originally had: one UWP application migrated to one UWP app with a .NetStandard 2.0 library
- [Part 2] Building a Web Assembly application using Blazor Preview 8
- [Part 3] Using the Uno Framework
- [Part 4] Using Xamarin Forms to build an Android App
- [Part 5 ]From UWP development to using Xamarin Forms to release an application to the Android Play Store
My current setup is that I have one Windows 10 laptop, my phone is an iPhone, my wife has an Android phone and a MacBook Air. I also own a few Windows Phone (what are those???) but they wont be part of our story.
My Story
I built an audio application that only runs on UWP (stupid me) and I am the only one in the house that has a Windows laptop (of course). My wife wants to use my audio app (she is too nice with me) and I would like to use my app on my iPhone. I don’t need to have a cross platform experience (start somewhere and continue on another device) I just want my app to work, simple right?
So basically I would need to build a few additional applications:

- Android application
- iOS application
- macOS application
- Web Application
- WPF application for non windows 10 users?
I already have a full time job, so no I wont building 4 or 5 different applications (or at least not in a timely matter). Also, I don’t own a MacBook so I am going to have a hard time building an iOS or macOS application.
My UWP Application
Originally my UWP application was one big fat project. However because I want to be able to reuse a much code as possible in my other project I am going to need to split my app so that I can reuse as much code as possible.
Here was my initial app structure:

After a bit of heavy lifting I arrived to a new application structure that was more shareable across different platforms:
- MyAudio.Common is a library that contained everything that does not need to executed on the UWP framework.
- Audio.Shared shared project that contained all of my UWP specific application code that could be shared.

MyAudio.Common is a .NetStandard 2.0 library that holds all of my API calls, my app Models, Helpers , Services, and ViewModels for my items that could be shared and that are not specific to the UWP framework.
I created a Audio.Shared shared project that contained all of my UWP specific application code because I wanted to gain some time when trying out UNO.
The Experiment
Now that we have a correct application setup we can start trying to go cross-platform. I will not try to build a Home view, with a HomeViewModel and some Services that I need to for my application on Web Assembly , Uno and Xamarin Froms. To not go overboard I will time box each development to 4 hours max.
The other articles: