hi @Priyanshu-byte-coder
Problem Statement
Developers love sharing their coding activity, streaks, and milestones on platforms like X (Twitter) or LinkedIn (similar to GitHub Wrapped). Currently, users have to manually take screenshots of the dashboard if they want to share their DevTrack stats, which is tedious and doesn't always look clean.
Proposed Solution
Add a "Share / Download" button to the StreakTracker widget (next to the "Copy to clipboard" button). When clicked, it should use a library like html-to-image to take a high-quality snapshot of the component and trigger a download of a PNG image (e.g., devtrack-streak.png). This makes it frictionless for users to share their stats and helps DevTrack grow organically!
Alternatives Considered
- Web Share API: Could be used instead of a direct download, but it has limited support on desktop browsers. A simple image download is more universally reliable.
- Server-side image generation (OG Images): We could use Vercel's
@vercel/og to generate images via an API route, but doing it client-side with html-to-image is much faster to implement and doesn't consume server resources.
Acceptance Criteria
Additional Context

hi @Priyanshu-byte-coder
Problem Statement
Developers love sharing their coding activity, streaks, and milestones on platforms like X (Twitter) or LinkedIn (similar to GitHub Wrapped). Currently, users have to manually take screenshots of the dashboard if they want to share their DevTrack stats, which is tedious and doesn't always look clean.
Proposed Solution
Add a "Share / Download" button to the
StreakTrackerwidget (next to the "Copy to clipboard" button). When clicked, it should use a library likehtml-to-imageto take a high-quality snapshot of the component and trigger a download of a PNG image (e.g.,devtrack-streak.png). This makes it frictionless for users to share their stats and helps DevTrack grow organically!Alternatives Considered
@vercel/ogto generate images via an API route, but doing it client-side withhtml-to-imageis much faster to implement and doesn't consume server resources.Acceptance Criteria
html-to-imagedependency.StreakTrackerheader.html-to-imageto generate a PNG of theStreakTrackercontainer.Additional Context