Xamarin Holiday Hack Ideas

David Ortinau

David

Are you looking for some code-related diversions this holiday season to pass the time and have some fun? So are we! Here are some ideas to help inspire us all.

Xamarin.Forms 5

This latest release of Xamarin.Forms is packed with cool updates to explore, whether you want to upgrade an existing project or start something fresh. Here are a few of the cool things you can experiment with this holiday season:

  • UWP XAML Hot Reload
  • Shell updates like FlyoutWidth and FlyoutFooter
  • CarouselView
  • Drag & Drop
  • Shapes and Paths
  • Swipe View
  • Gradient Brushes
  • Surface Duo
  • And more!

Image xf 5 ipad

Xamarin Community Toolkit

The newly rebooted toolkit is now home to MediaElement, CameraView, Expander, and C# UI helpers just to name a few. Beyond view controls, the toolkit also have gestures like LongPress, every value converter you can imagine, and other behaviors and effects. Once upon a time you could say all Xamarin apps had 2 libraries: Forms and Essentials. With the Xamarin Community Toolkit we’re going to need to make that 3!

Image toolkit 1

Ride the Comet

Built atop Xamarin native UI controls, Comet is an app model experience from James Clancey that favors C# fluent syntax and a simplified take on the Model-View-Update (MVU) pattern. If you’re looking to stay within C# and .NET, and learn how MVU differs from other patterns like MVVM, then Comet is for you. It also boast first class SkiaSharp support, and a large number of sample pages to play with. And don’t look now, but you can use Visual Studio Code and C# Hot Reload with it.

[Body]
View body()
    => new VStack {
        new Text(()=> $"({comet.Rides}) rides taken:{comet.CometTrain}")
            .Frame(width:300)
            .LineBreakMode(LineBreakMode.CharacterWrap)
            ,

        new Button("Ride the Comet! ☄️", ()=>{
            comet.Rides++;
        })
            .Frame(height:44)
            .Margin(8)
            .Color(Color.White)
            .Background(Color.Green)
        .RoundedBorder(color:Color.Blue)
        .Shadow(Color.Grey,4,2,2),
    };

Fabulous

Before Comet came the Fabulous project, and Elm inspired framework written in F# that uses Xamarin.Forms controls to deliver native apps. Developers tell me they love the built in hot reload and uni-directional flow of state. Recently we’ve had several guest blog posts here about Fabulous, and some useful community presentations at virtual events can help get you started on your functional journey.

Mac Catalyst

Are you eager to see your iOS apps running on macOS as desktop apps? This is what Catalyst does for you, and it’s coming to .NET 6! Apple has been shipping their own apps such as News, Messages, and Maps to macOS using Catalyst.

We have a very early prototype that enables this functionality, and would love for you to try it. But be warned, as iOS team engineer Rolf responded when asked what was left to be done, he said “everything”. Follow the link below to get started and be sure to share your feedback on GitHub.

Get Hacking

We hope you’ll find something inspiring to work on this holiday season that refreshes you and puts a smile on your face. Be sure to share with us all on Twitter, Twitch, or YouTube and tag it with #dotNetHolidayHacks. Seeing what you do with .NET really does help to fuel us all year round.

1 comment

Leave a comment