- 
                Notifications
    
You must be signed in to change notification settings  - Fork 1
 
Add fullscreen mood animations with user controls following Material Design 3 Expressive principles #36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
| 
           @copilot Use special animations for each one, such as rain for the crying emoji and sunshine for the happy one. There's also a bit of lag at the end where it shows the emoji static for a split second  | 
    
| 
           @copilot experiment with animations for other parts of the app too. it's for a test so don't be reserved! i want to make the app more fluid and fun  | 
    
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
          
 Implemented unique animations for each emoji in commit 34def9b: Animations: 
 Timing fix: Reduced animation duration from 1500ms to 1400ms to eliminate the static emoji lag at the end. The component now hides at exactly the right moment as the fade-out completes.  | 
    
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
          
 Added fluid animations throughout the app in commit 100bcfd: Global animations: 
 Calendar animations: 
 Timeline animations: 
 All animations respect   | 
    
          
  | 
    
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
          
 Refined animations following MD3 Expressive principles in commit 26cd727: 1. Simplified emoji animation: 
 2. Faster animation: 
 3. Removed hover animations: 
 4. Removed header animations: 
 5. Added color transitions: 
 6. MD3 Expressive principles: 
  | 
    
          
 And fix merge conflicts / build  | 
    
…icts Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
Co-authored-by: danielchalmers <7112040+danielchalmers@users.noreply.github.com>
          
 Implemented all requested changes in commits 252170c and 39af30a: 1. Animation settings: 
 2. Theme color transitions: 
 3. Card-only animations: 
 4. Note creation animation: 
 5. Removed press animations: 
 6. Smoother import/export: 
 7. Merge conflicts: 
  | 
    
| 
           Moved to #67  | 
    
Adds a fullscreen celebration animation when users select a mood emoji, using the mood's calendar color as the background. Implements refined animations throughout the app following Material Design 3 Expressive principles with consistent motion, color-only transitions, and user controls for animation preferences.
Changes
New Components
MoodAnimation.razor- Fullscreen overlay with 1s auto-dismiss using unified animation for all emojisMoodAnimation.razor.css- Simplified scale animation with special visual effects (rain, sunshine, stars, clouds) per mood andprefers-reduced-motionsupportIntegration
DataPointView.razor- Triggers animation on mood selection (excludes "undecided" emoji), merged with motivational quote featureIndex.razor- Instantiates MoodAnimation componentEnhanced Animations
wwwroot/app.css- MD3 Expressive animations with color transitions only (press animations removed except calendar days)Pages/Index.razor.css- Removed data point slide-in animations, color transitions onlyPages/Calendar/CalendarDay.razor.css- Calendar day press animations and simplified emoji popPages/SettingsPage.razor- Added animation controls, improved import/export flow with non-blocking UIPages/SettingsPage.razor.css- Theme color transitions for smooth theme switchingUser Controls
Data/PreferenceService.cs- AddedDisableExtraAnimationssetting to allow users to turn off emoji celebration animationsMood Animation
All emojis use the same smooth scale animation for consistency, with unique visual effects:
Material Design 3 Expressive Principles
Animation Controls:
Color-Only Interactions:
Preserved Entrance Animations:
Timing & Easing:
Import/Export Improvements
Implementation
The animation retrieves colors via
PreferenceService.GetMoodColor()to maintain visual consistency with the calendar grid. Animation timing is optimized at 1s for a snappier feel. All animations use CSS transforms and opacity for hardware-accelerated 60fps performance. Respectsprefers-reduced-motionfor accessibility. Optional parameter design preserves backward compatibility—existing DataPointView usages continue to work without modification.Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.