A fun, polished .NET MAUI application that helps users track their daily mood and provides motivational quotes for inspiration.
This app was created using Amazon Q Developer CLI.
Find the blog post detailing the app creation here: https://codetraveler.io/2025/07/03/hey-q-make-me-a-cool-mobile-app/
- Daily Mood Tracking: Select from 5 different mood states with colorful emoji representations
- Motivational Quotes: Get inspired with randomly generated motivational quotes
- Professional UI: Clean, modern design with smooth interactions using Grid layouts and Border controls
- Cross-Platform: Runs on Android and iOS devices
- .NET 9.0 - Latest .NET framework
- .NET MAUI - Cross-platform UI framework
- CommunityToolkit.Mvvm 8.4.0 - MVVM pattern implementation with partial properties
- CommunityToolkit.Maui 12.0.0 - Additional MAUI controls and helpers
- MVVM Architecture - Clean separation of concerns
- Modern C# Features - Collection expressions, partial properties, DateTimeOffset, Random.Shared
The app follows MVVM (Model-View-ViewModel) architecture with StyleCop SA1201 compliance:
- Models:
MoodEntryrecord andMoodDatastatic class with immutable collections using IReadOnlyList - ViewModels:
MainPageViewModelwith partial observable properties and relay commands - Views:
MainPagewith professional UI using only Grid layouts (no nested StackLayouts)
- StyleCop SA1201 Compliance - Proper element ordering (constructors, properties, methods)
- Collection Expressions - Modern C# syntax
[...]for collection initialization - Partial Properties - Latest CommunityToolkit.Mvvm 8.4.0 features
- Immutable Models - Using records and IReadOnlyList for data safety
- DateTimeOffset - Proper date/time handling instead of DateTime
- Random.Shared - Efficient random number generation
- Border Controls - Modern UI using Border instead of Frame
- Grid-Only Layouts - No nested StackLayouts, pure Grid with RowDefinitions/ColumnDefinitions
- Visual Studio 2022 (latest version)
- .NET 9.0 SDK
- Android SDK (for Android deployment)
- Xcode (for iOS deployment on macOS)
- Open the solution in Visual Studio 2022
- Restore NuGet packages
- Select your target platform (Android/iOS)
- Build and deploy to device or emulator
MoodBoost/
├── Models/
│ └── MoodEntry.cs # Data models and static data with collection expressions
├── ViewModels/
│ └── MainPageViewModel.cs # MVVM view model with partial properties
├── Views/
│ └── MainPage.xaml(.cs) # Main UI page with Grid-only layout
├── Resources/
│ ├── Styles/
│ │ ├── Colors.xaml # App color palette
│ │ └── Styles.xaml # UI styles and themes
│ ├── Fonts/ # Custom fonts
│ ├── AppIcon/ # App icons (SVG)
│ └── Splash/ # Splash screen
├── Platforms/
│ ├── Android/ # Android-specific files
│ │ ├── MainActivity.cs
│ │ ├── MainApplication.cs
│ │ ├── AndroidManifest.xml
│ │ └── Resources/ # Android resources
│ └── iOS/ # iOS-specific files
│ ├── AppDelegate.cs
│ ├── Program.cs
│ ├── Info.plist
│ └── LaunchScreen.storyboard
├── App.xaml(.cs) # Application entry point
├── AppShell.xaml(.cs) # Shell navigation
├── MauiProgram.cs # MAUI app configuration
└── MoodBoost.csproj # Project file with .NET 9 and latest packages
The app features a vibrant, professional design with:
- Primary Color: Orange (#FF6B35) for energy and positivity
- Secondary Color: Teal (#4ECDC4) for balance and calm
- Clean Design: White cards with rounded corners using Border controls
- Modern Typography: OpenSans font family
- Responsive Layout: Pure Grid system without nested layouts
- Visual Hierarchy: Proper spacing and color contrast
- Fantastic 😄 - Green (#4CAF50) - "I'm feeling amazing today!"
- Happy 😊 - Light Green (#8BC34A) - "Things are going well!"
- Neutral 😐 - Yellow (#FFC107) - "Just an ordinary day"
- Down 😔 - Orange (#FF9800) - "Not my best day"
- Sad 😢 - Red (#F44336) - "Feeling quite low today"
Each mood includes an emoji, name, description, and associated color for immediate visual feedback.
- Immutable Data: All collections use IReadOnlyList and collection expressions
- Type Safety: Nullable reference types enabled
- Modern Patterns: Latest C# language features and MVVM toolkit
- Platform Integration: Proper Android and iOS platform-specific implementations
- Performance: Efficient UI rendering with Grid-only layouts
- Maintainability: Clean architecture with clear separation of concerns
- Clone the repository
- Open
MoodBoost.slnin Visual Studio 2022 - Ensure .NET 9.0 SDK is installed
- Select your target platform (Android/iOS)
- Build and run the application
The app will launch with today's date displayed and allow you to select your current mood, view motivational quotes, and track your daily emotional state with a beautiful, professional interface.
