Commit Graph
140 Commits
Author SHA1 Message Date
phranck cfa8b31631 Refactor: Standardize UI card styling and remove em-dashes
- Unified card headers: gap-3, Icon size 20, text-accent color
- PlansCard: collapsible sections, animated expand/collapse
- update-plans-data.ts: export all plans (no limit)
- Replaced all em-dashes with colons or full sentences
- Content text standardized to text-lg across all cards
- FeatureCard, ArchHighlight descriptions adjusted
2026-02-07 00:24:19 +01:00
phranck 0d10b0255d Feat: Add Plans Dashboard Card with hourly data sync
- Standardize plan file structure (PLAN_TEMPLATE.md): Title → Preface → Context → Spec → Design → Implementation → Checklist
- Rewrite all 24 plan prefaces in natural, action-focused language with markdown support
- Add update-plans-data.ts script: extracts top 5 open + 5 done plans from plans/ directory
- Add PlansCard React component with markdown rendering (react-markdown)
- Integrate PlansCard into dashboard (below activity heatmap)
- Add usePlansCache hook with 5-minute localStorage cache
- Add update-plans-data.yml GitHub Actions workflow (hourly trigger)
- Install react-markdown dependency for markdown-in-JSON rendering
- Update npm scripts: prebuild and update:plans
2026-02-06 23:12:27 +01:00
github-actions[bot] 1b6d2d7895 chore: update social cache [skip ci] 2026-02-06 18:40:20 +00:00
github-actions[bot] 8cfef6e809 chore: update social cache [skip ci] 2026-02-06 16:38:26 +00:00
github-actions[bot] d493205795 chore: update social cache [skip ci] 2026-02-06 14:42:02 +00:00
github-actions[bot] f47526153f chore: update social cache [skip ci] 2026-02-06 12:42:57 +00:00
github-actions[bot] 2b0374bef6 chore: update social cache [skip ci] 2026-02-06 10:35:50 +00:00
phranck 8d1e5a5461 Fix: Auto-refresh timer respects cache TTL remaining time 2026-02-06 11:10:31 +01:00
phranck 48cb66de57 Chore: Filter [skip ci] commits from dashboard 2026-02-06 10:57:05 +01:00
github-actions[bot] 39825a210a chore: update social cache [skip ci] 2026-02-06 08:35:48 +00:00
github-actions[bot] 83be2d64e0 chore: update social cache [skip ci] 2026-02-06 06:46:21 +00:00
github-actions[bot] b19a2aa114 chore: update social cache [skip ci] 2026-02-06 04:11:52 +00:00
github-actions[bot] 15596701ef chore: update social cache [skip ci] 2026-02-06 01:14:20 +00:00
phranck 60051ce07f Fix: Stack and center footer text on phones/tablets (< 1024px) 2026-02-06 00:55:20 +01:00
phranck 40134628a9 Fix: Center dashboard header on phones, reload icon below 2026-02-06 00:52:39 +01:00
phranck fe7ce838ef Fix: Disable HeroTerminal power button on phones only (< 768px)
Terminal is still visible on phones but the interactive power-on
feature is disabled. Tablets and larger screens keep full functionality.
2026-02-06 00:50:40 +01:00
phranck 3b44a47300 Fix: Hide HeroTerminal on mobile, reduce top padding 2026-02-06 00:48:54 +01:00
phranck d47d7e47b6 Fix: Hide package badge and code preview on mobile 2026-02-06 00:47:34 +01:00
phranck 1c60cfaea7 Fix: Mobile responsive - CommitList, footer, hide heatmap
- CommitList: Hide SHA on mobile, smaller text, icon-only expand button
- Footer: Center cache status on mobile, hide rate limit
- Heatmap: Hidden on mobile (< 640px) - not useful on small screens
2026-02-06 00:44:57 +01:00
phranck f4a149abc6 Fix: Heatmap responsive - horizontal scroll on mobile
On screens < 600px: fixed cell size (10px), horizontal scroll enabled,
day labels sticky on left. On larger screens: cells fill available width.
2026-02-06 00:42:41 +01:00
phranck b0028258e1 Fix: Responsive design for mobile (iPhone SE)
- SiteNav: Add hamburger menu for mobile, hide desktop links on small screens
- StatCard: Stack vertically on mobile (icon+label top, number bottom)
- Icon: Add line3Horizontal and xmark custom icons for hamburger menu
2026-02-06 00:36:28 +01:00
phranck 79d717e52a Chore: Remove CC license from website footer 2026-02-06 00:32:14 +01:00
phranck 16c530dfc1 Fix: Keep data visible during background refresh
Adds isRefreshing state separate from loading. During auto-refresh,
existing data remains visible (no skeleton flash). Only the spinner
icon shows refresh activity. Removes manual refresh button.
2026-02-06 00:16:43 +01:00
phranck 0aac32f16d Feat: Add smooth list animations for commit updates
Uses Framer Motion for enter/exit/reorder animations. New commits
slide in from the top, existing commits smoothly animate to their
new positions. Adds ~40KB to the bundle.
2026-02-06 00:10:44 +01:00
phranck ef493c7184 Feat: Add localStorage cache + auto-refresh to dashboard
Prevents redundant GitHub API calls on page reload. Data is cached in
localStorage with a 5-minute TTL and auto-refreshed in the background.
Force-refresh button with 60s cooldown. Footer shows last-updated time
and countdown to next refresh.
2026-02-06 00:03:03 +01:00
github-actions[bot] ac958a0844 chore: update social cache [skip ci] 2026-02-05 22:21:55 +00:00
github-actions[bot] 9409182c90 chore: update social cache [skip ci] 2026-02-05 20:27:09 +00:00
github-actions[bot] 34eda1912d chore: update social cache [skip ci] 2026-02-05 18:45:20 +00:00
github-actions[bot] e104668069 chore: update social cache [skip ci] 2026-02-05 16:41:05 +00:00
github-actions[bot] 3193360cf6 chore: update social cache [skip ci] 2026-02-05 14:42:58 +00:00
github-actions[bot] ab15305be5 chore: update social cache [skip ci] 2026-02-05 14:23:53 +00:00
phranck 64fe55eda2 Feat: replace Branches stat card with Open Issues on dashboard 2026-02-05 12:17:39 +01:00
phranck 631d451eca Feat: optimize social lookup with GitHub Social API, instance validation, and timeouts
Add fetchGitHubSocialAccounts() using /users/{login}/social_accounts API
as primary source. Validate Mastodon domains via NodeInfo instead of
blocklists. Add 5s timeouts to all fetch calls. Expand known instances
list. Skip cross-verification for authoritative sources (github, keybase).
Full refresh now clears cache to prevent stale false positives.
2026-02-05 12:17:33 +01:00
phranck 60c8edf795 Fix: pad heatmap to full year and update activity cache with 52 weeks 2026-02-05 01:27:16 +01:00
phranck 3ca22e1944 Fix: cap heatmap cell size via MIN_COLUMNS to prevent oversized cells 2026-02-05 01:10:39 +01:00
phranck c77142ede6 Fix: add missing useEffect import and fix AvatarMarquee overflow 2026-02-05 01:02:30 +01:00
phranck 32b30b7387 Reapply "feat: fall back to cached weeklyActivity from weekly-activity-cache.json when /stats/commit_activity is unavailable"
This reverts commit b89c78f014.
2026-02-04 22:04:31 +01:00
phranck 59b2a303ce Reapply "perf: preload stargazer avatars for instant Stargazers panel"
This reverts commit 15633047bc.
2026-02-04 22:04:31 +01:00
phranck b89c78f014 Revert "feat: fall back to cached weeklyActivity from weekly-activity-cache.json when /stats/commit_activity is unavailable"
This reverts commit c891e6ca6e.
2026-02-04 21:59:49 +01:00
phranck 15633047bc Revert "perf: preload stargazer avatars for instant Stargazers panel"
This reverts commit e9cea4b2bf.
2026-02-04 21:59:49 +01:00
phranck e9cea4b2bf perf: preload stargazer avatars for instant Stargazers panel 2026-02-04 21:57:19 +01:00
phranck c891e6ca6e feat: fall back to cached weeklyActivity from weekly-activity-cache.json when /stats/commit_activity is unavailable 2026-02-04 21:54:39 +01:00
phranck 4f57e49d0b Fix: Marquee hover stops only for visible avatars; prevent heatmap popover flicker 2026-02-04 21:42:22 +01:00
phranck abfc3a05e9 feat(dashboard): add iOS-like swipe/drag with momentum to marquee
- Touch swipe on mobile, mouse drag on desktop
- Momentum scrolling with friction-based deceleration
- Click vs drag detection (5px threshold)
- Cursor grab/grabbing visual feedback
- Popover visibility bounded to 5% edge margin
2026-02-04 21:28:42 +01:00
phranck a6930f17be feat(dashboard): add stargazer avatar marquee with horizontal scroll
- Create generic AvatarMarquee component for horizontal scrolling avatars
- Extract StargazerPopoverContent for social links display
- Refactor StargazersPanel to use AvatarMarquee
- Reorder StatCards: Stars, Contributors, Forks, Releases | Commits, Branches, Open PRs, Merged PRs
- Add fade-in/out masks at edges
- Smooth brake/accelerate on hover
- Popover visibility bounded to visible area
- Add cursor-pointer to Refresh button
- Performance: memoized callbacks, stable props
- Add .env.local to .gitignore
2026-02-04 21:23:15 +01:00
phranck c78d439c4d feat(dashboard): add social account lookup for stargazers
- Add multi-source social search (Keybase, about.me, Linktree, GitHub bio/blog)
- Implement avatar comparison and cross-platform verification
- Create GitHub Action for scheduled cache updates (2h incremental, weekly full)
- Display Mastodon, Bluesky, Twitter links in stargazer popover
- Add smooth hover animations with invisible bridge for better UX
- Add social-overrides.json for manual account mappings
2026-02-04 20:09:55 +01:00
phranck df564fba42 Perf: Preload hard-drive-boot audio for faster playback 2026-02-04 16:11:12 +01:00
phranck 3b1f25855e Fix: Only add Authorization header when token is non-empty 2026-02-04 14:49:54 +01:00
phranck f9b106e509 Feat: Unified IconBadge component for SF Symbols
- Add IconBadge component with sm/md/lg variants
- Refactor FeatureCard to use IconBadge
- Update ArchHighlight and RepoInfo for consistency
- Add DASHBOARD_GITHUB_TOKEN to CI for rate limit
2026-02-04 14:18:54 +01:00
phranck 5855f10154 add dashboard page 2026-02-04 03:20:39 +01:00