{"id":31745448,"url":"https://github.com/thecodetraveler/moodboost","last_synced_at":"2025-10-09T12:57:17.441Z","repository":{"id":301481532,"uuid":"1009336759","full_name":"TheCodeTraveler/MoodBoost","owner":"TheCodeTraveler","description":"A fun, interactive .NET MAUI application that allows users to create, save, and apply custom color themes based on their mood. Created using Amazon Q Developer CLI","archived":false,"fork":false,"pushed_at":"2025-07-24T22:50:49.000Z","size":26343,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-05T02:55:00.355Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://codetraveler.io/2025/07/03/hey-q-make-me-a-cool-mobile-app/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheCodeTraveler.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-27T01:05:37.000Z","updated_at":"2025-07-22T19:11:23.000Z","dependencies_parsed_at":"2025-07-01T00:32:51.659Z","dependency_job_id":"ecd7dd98-227d-4c78-b5a6-eff7bc499fe6","html_url":"https://github.com/TheCodeTraveler/MoodBoost","commit_stats":null,"previous_names":["thecodetraveler/moodmixer","thecodetraveler/moodboost"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TheCodeTraveler/MoodBoost","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheCodeTraveler%2FMoodBoost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheCodeTraveler%2FMoodBoost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheCodeTraveler%2FMoodBoost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheCodeTraveler%2FMoodBoost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheCodeTraveler","download_url":"https://codeload.github.com/TheCodeTraveler/MoodBoost/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheCodeTraveler%2FMoodBoost/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001416,"owners_count":26083078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-09T12:57:13.964Z","updated_at":"2025-10-09T12:57:17.427Z","avatar_url":"https://github.com/TheCodeTraveler.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MoodBoost - Daily Mood Tracker \u0026 Motivational App\n\nA fun, polished .NET MAUI application that helps users track their daily mood and provides motivational quotes for inspiration. \n\nThis app was created using [Amazon Q Developer CLI](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line.html?trk=26a307dd-f6c6-4133-a99f-0388d1304aef\u0026sc_channel=el).\n\nFind the blog post detailing the app creation here: https://codetraveler.io/2025/07/03/hey-q-make-me-a-cool-mobile-app/\n\n![App](./blog/Screenshot.png)\n\n## Features\n\n- **Daily Mood Tracking**: Select from 5 different mood states with colorful emoji representations\n- **Motivational Quotes**: Get inspired with randomly generated motivational quotes\n- **Professional UI**: Clean, modern design with smooth interactions using Grid layouts and Border controls\n- **Cross-Platform**: Runs on Android and iOS devices\n\n## Technical Stack\n\n- **.NET 9.0** - Latest .NET framework\n- **.NET MAUI** - Cross-platform UI framework\n- **CommunityToolkit.Mvvm 8.4.0** - MVVM pattern implementation with partial properties\n- **CommunityToolkit.Maui 12.0.0** - Additional MAUI controls and helpers\n- **MVVM Architecture** - Clean separation of concerns\n- **Modern C# Features** - Collection expressions, partial properties, DateTimeOffset, Random.Shared\n\n## Architecture\n\nThe app follows MVVM (Model-View-ViewModel) architecture with StyleCop SA1201 compliance:\n\n- **Models**: `MoodEntry` record and `MoodData` static class with immutable collections using IReadOnlyList\n- **ViewModels**: `MainPageViewModel` with partial observable properties and relay commands\n- **Views**: `MainPage` with professional UI using only Grid layouts (no nested StackLayouts)\n\n## Code Quality Features\n\n- **StyleCop SA1201 Compliance** - Proper element ordering (constructors, properties, methods)\n- **Collection Expressions** - Modern C# syntax `[...]` for collection initialization\n- **Partial Properties** - Latest CommunityToolkit.Mvvm 8.4.0 features\n- **Immutable Models** - Using records and IReadOnlyList for data safety\n- **DateTimeOffset** - Proper date/time handling instead of DateTime\n- **Random.Shared** - Efficient random number generation\n- **Border Controls** - Modern UI using Border instead of Frame\n- **Grid-Only Layouts** - No nested StackLayouts, pure Grid with RowDefinitions/ColumnDefinitions\n\n## Build Requirements\n\n- Visual Studio 2022 (latest version)\n- .NET 9.0 SDK\n- Android SDK (for Android deployment)\n- Xcode (for iOS deployment on macOS)\n\n## Build Instructions\n\n1. Open the solution in Visual Studio 2022\n2. Restore NuGet packages\n3. Select your target platform (Android/iOS)\n4. Build and deploy to device or emulator\n\n## Project Structure\n\n```\nMoodBoost/\n├── Models/\n│   └── MoodEntry.cs              # Data models and static data with collection expressions\n├── ViewModels/\n│   └── MainPageViewModel.cs      # MVVM view model with partial properties\n├── Views/\n│   └── MainPage.xaml(.cs)        # Main UI page with Grid-only layout\n├── Resources/\n│   ├── Styles/\n│   │   ├── Colors.xaml           # App color palette\n│   │   └── Styles.xaml           # UI styles and themes\n│   ├── Fonts/                    # Custom fonts\n│   ├── AppIcon/                  # App icons (SVG)\n│   └── Splash/                   # Splash screen\n├── Platforms/\n│   ├── Android/                  # Android-specific files\n│   │   ├── MainActivity.cs\n│   │   ├── MainApplication.cs\n│   │   ├── AndroidManifest.xml\n│   │   └── Resources/            # Android resources\n│   └── iOS/                      # iOS-specific files\n│       ├── AppDelegate.cs\n│       ├── Program.cs\n│       ├── Info.plist\n│       └── LaunchScreen.storyboard\n├── App.xaml(.cs)                 # Application entry point\n├── AppShell.xaml(.cs)            # Shell navigation\n├── MauiProgram.cs                # MAUI app configuration\n└── MoodBoost.csproj              # Project file with .NET 9 and latest packages\n```\n\n## UI Design Philosophy\n\nThe app features a vibrant, professional design with:\n- **Primary Color**: Orange (#FF6B35) for energy and positivity\n- **Secondary Color**: Teal (#4ECDC4) for balance and calm\n- **Clean Design**: White cards with rounded corners using Border controls\n- **Modern Typography**: OpenSans font family\n- **Responsive Layout**: Pure Grid system without nested layouts\n- **Visual Hierarchy**: Proper spacing and color contrast\n\n## Mood States\n\n1. **Fantastic** 😄 - Green (#4CAF50) - \"I'm feeling amazing today!\"\n2. **Happy** 😊 - Light Green (#8BC34A) - \"Things are going well!\"\n3. **Neutral** 😐 - Yellow (#FFC107) - \"Just an ordinary day\"\n4. **Down** 😔 - Orange (#FF9800) - \"Not my best day\"\n5. **Sad** 😢 - Red (#F44336) - \"Feeling quite low today\"\n\nEach mood includes an emoji, name, description, and associated color for immediate visual feedback.\n\n## Development Best Practices\n\n- **Immutable Data**: All collections use IReadOnlyList and collection expressions\n- **Type Safety**: Nullable reference types enabled\n- **Modern Patterns**: Latest C# language features and MVVM toolkit\n- **Platform Integration**: Proper Android and iOS platform-specific implementations\n- **Performance**: Efficient UI rendering with Grid-only layouts\n- **Maintainability**: Clean architecture with clear separation of concerns\n\n## Getting Started\n\n1. Clone the repository\n2. Open `MoodBoost.sln` in Visual Studio 2022\n3. Ensure .NET 9.0 SDK is installed\n4. Select your target platform (Android/iOS)\n5. Build and run the application\n\nThe 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.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthecodetraveler%2Fmoodboost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthecodetraveler%2Fmoodboost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthecodetraveler%2Fmoodboost/lists"}