feat(ui): Add Micro-Animations & Transitions for Dynamic Dashboard UX#1561
Conversation
|
@ArshVermaGit is attempting to deploy a commit to the PRIYANSHU DOSHI's projects Team on Vercel. A member of the Team first needs to authorize it. |
GSSoC Label Checklist 🏷️@Priyanshu-byte-coder — please apply the appropriate labels before merging: Difficulty (pick one):
Quality (optional):
Validation (required to score):
|
ArshVermaGit
left a comment
There was a problem hiding this comment.
Hi @Priyanshu-byte-coder ! Issue #1560 has been resolved. Please review the PR and merge it under GSSoC. Thanks!
Priyanshu-byte-coder
left a comment
There was a problem hiding this comment.
This PR now has merge conflicts with main due to recent merges. Please rebase onto main and resolve conflicts.
|
This PR now has merge conflicts with |
# Conflicts: # src/components/CopyLinkButton.tsx # src/components/PRMetrics.tsx # src/components/StreakTracker.tsx # src/components/TopRepos.tsx
|
@Priyanshu-byte-coder merge conflicts are resolved please review and merge |
|
| GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
|---|---|---|---|---|---|
| 33523564 | Triggered | Generic High Entropy Secret | 2348ced | .env.example | View secret |
| 33523565 | Triggered | Supabase Service Role JWT | 2348ced | .env.example | View secret |
| 33523566 | Triggered | JSON Web Token | 2348ced | .env.example | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secrets safely. Learn here the best practices.
- Revoke and rotate these secrets.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
ca300cd
into
Priyanshu-byte-coder:main
|
🎉 Merged! Thanks for contributing to DevTrack. If the project has been useful to you, a ⭐ star on the repo is the easiest way to support it — it helps DevTrack get discovered by more developers. Keep an eye on open issues for your next contribution! |
Summary
Adds comprehensive micro-animations and smooth CSS transitions throughout the DevTrack dashboard to make the interface feel more responsive, alive, and premium. This addresses the issue where the UI felt static when interacting with dashboard elements.
Resolved Issue
Resolves #1560
Problem
The application UI lacked interactive feedback on standard elements — stat tiles, list items, progress bars, and loading states all felt flat and static, reducing the perceived quality of the product.
Solution
Animation Foundation
tailwind.config.ts: Extended with custom keyframes (fade-in-up,scale-in,shimmer) and corresponding animation utilities.globals.css: Introduced 5 reusable CSS utility classes:.stagger-children.skeleton-shimmer.stat-cell.list-item-hover.progress-fillComponents Enhanced (16+ files)
animate-pulse→skeleton-shimmeracross 26+ componentsKey Files Changed
tailwind.config.ts— Custom animation keyframessrc/app/globals.css— Reusable animation utility classessrc/components/IssueMetrics.tsxsrc/components/PersonalRecords.tsxsrc/components/RecentActivity.tsxsrc/components/InactiveRepositoriesCard.tsxsrc/components/PRMetrics.tsxsrc/components/WeeklySummaryCard.tsxsrc/components/ProjectMetrics.tsxsrc/components/CommunityMetrics.tsxsrc/components/LocalCodingTime.tsxsrc/components/GoalTracker.tsxsrc/components/TopRepos.tsxsrc/components/DiscussionsWidget.tsxsrc/components/CIAnalytics.tsxAccessibility
All animations respect the existing
prefers-reduced-motion: reducemedia query inglobals.css, which blanket-disables all animation and transition durations. No additional accessibility work was required.Type of Change
How Has This Been Tested?
npm run buildcompiles successfully with zero TypeScript or module errors.prefers-reduced-motionmedia query correctly disables all new animations.