This is an example MAUI application I tried to use some features to improve my knowledge.
On this project, we will have a lot of performance stuff to keep our infinite scroll beautiful we will also have custom controls, animations, popups, dependency injection, extensions etc.
I've used this library is used to facilitate my life with API communication is easily to use and customize. CHECK HERE
I've used this library to create popups and make toasts, but you can use that for a lot of cool things. CHECK HERE
This library help us to download images from url with progress and placeholder images, but the best thing that it does is caching image it can improve a lot of performance you don't need to keep downloading the stuff from websites all of the time or converting the url to Uri or some Image class to use in XAML e.g. CHECK HERE
This library help us with Binding that give us a lot of performance when we need to create views with data, basically the x:Bind will be convert to C# so we won a lot of performance and we can debug the compiled layout too it will helps a lot to do some 'layout troubleshooting'. CHECK HERE
Still about performance, I used compressedLayout too, basically it will remove the events and other things from "ViewGroup" e.g. StackLayout, ContentView... If you only use this ViewGroup to create some design that will be a greater performance assistant for you. MORE ABOUT
This task extension helps a lot with deadlocks or bad performances when the topic is Thread, that will say to your system "don't do this job in this thread" so it will remove your heavy job from MainThread or an used Thread and send to another, it's great when your task is HEAVY or to remove tasks from MainThread. MORE ABOUT
On this project I tried to use nullable feature for knowledgement. I liked, we can say to another dev or ourselfs that the variable or the response of some method can be null, so you can prepare the try catch or the treatment for that. CHECK HERE
You can use Api or Mock type to run this project. The difference is Api build will get the daily feed list from the internet and the Mock will get from the assets.