Skip to content

Persist Google profile picture as base64 in localStorage with fallback and add install-extension nudge banner on dashboard #86exkh0z3#35

Merged
navidshad merged 2 commits into
devfrom
CU-86exkh0z3_Step-3-First-run-dashboard-fix-name-avatar-timezone-install-extension-nudge_Navid-Shad
May 13, 2026
Merged

Persist Google profile picture as base64 in localStorage with fallback and add install-extension nudge banner on dashboard #86exkh0z3#35
navidshad merged 2 commits into
devfrom
CU-86exkh0z3_Step-3-First-run-dashboard-fix-name-avatar-timezone-install-extension-nudge_Navid-Shad

Conversation

@navidshad
Copy link
Copy Markdown
Contributor

@navidshad navidshad commented May 13, 2026

🏷️ PR Title:
Persist Google profile picture as base64 in localStorage with fallback and add install-extension nudge banner on dashboard

📋 Summary

This PR implements persistence of the Google profile picture by saving it as a base64 string in localStorage, including a fallback for broken URLs. Additionally, it introduces a nudge banner on the dashboard to prompt users to install the extension.

🔗 Related Tasks

#86exkh0z3 - Persist Google profile picture as base64 in localStorage with broken-URL fallback and add install-extension nudge banner on dashboard

📝 Additional Details

  • The profile picture persistence improves user experience by avoiding repeated image fetches and handling cases where the image URL is broken.
  • The nudge banner serves as a gentle reminder for users to install the extension, potentially increasing adoption rates.

📜 Commit List

8011909 feat: persist Google profile picture as base64 in localStorage with broken-URL fallback #86exkh0z3
a656a3d feat: add install-extension nudge banner on dashboard #86exkh0z3

navidshad and others added 2 commits May 13, 2026 20:01
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…roken-URL fallback #86exkh0z3

Server now refreshes gPicture on every login (covers backfill for existing
accounts and user-changed-their-Google-avatar). Client caches the rendered
avatar as a 96x96 JPEG data URI keyed by userId so subsequent loads paint
instantly with no Google CDN round-trip, and remembers failed URLs for 24h
so accounts without a real Google photo don't fire doomed requests on every
page load — placeholder shows immediately.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@navidshad
Copy link
Copy Markdown
Contributor Author

@navidshad navidshad changed the title Cu 86exkh0z3 step 3 first run dashboard fix name avatar timezone install extension nudge navid shad Persist Google profile picture as base64 in localStorage with fallback and add install-extension nudge banner on dashboard #86exkh0z3 May 13, 2026
@navidshad navidshad merged commit 1ba054e into dev May 13, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant