Branch name: feature/github-stars-banner#5
Merged
Conversation
Add GitHub stars badge across public pages * Add reusable GitHubStarsLink component * Fetch and cache GitHub star count in localStorage * Format large star counts with compact notation * Add GitHub stars link to landing and auth pages * Add GitHub stars link to app shell and contact page * Improve header and footer layout formatting * Remove unused navigation dependency from app shell * Add abort handling for GitHub API requests
There was a problem hiding this comment.
Pull request overview
Adds a reusable GitHub stars badge component and integrates it across several public-facing pages/layouts to promote the project’s GitHub presence.
Changes:
- Introduces
GitHubStarsLinkcomponent that fetches and displays repo star count with localStorage caching. - Adds the stars badge to navigation areas in landing, auth, contact, shared diagnosis, and app shell pages.
- Cleans up app shell layout formatting and removes an unused
useNavigateimport.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| frontend/src/components/GitHubStarsLink.jsx | New reusable GitHub stars badge with fetch + localStorage cache + abort handling. |
| frontend/src/pages/Landing.jsx | Adds stars badge to landing page nav. |
| frontend/src/pages/AuthForm.jsx | Adds stars badge to auth form header. |
| frontend/src/pages/AuthCallback.jsx | Adds fixed-position stars badge during auth callback screen. |
| frontend/src/pages/ContactFeedback.jsx | Adds stars badge to contact/feedback page header. |
| frontend/src/pages/SharedDiagnosis.jsx | Adds stars badge to shared diagnosis top bar. |
| frontend/src/pages/AppShell.jsx | Adds stars badge to app shell header; removes unused navigation dependency and reformats layout/footer markup. |
Comment on lines
+20
to
+26
| React.useEffect(() => { | ||
| let ignore = false; | ||
|
|
||
| const cachedStars = window.localStorage.getItem(GITHUB_STARS_CACHE_KEY); | ||
| if (cachedStars && !Number.isNaN(Number(cachedStars))) { | ||
| setStarCount(Number(cachedStars)); | ||
| } |
Comment on lines
+28
to
+33
| const controller = new AbortController(); | ||
|
|
||
| fetch(`https://api.github.com/repos/${GITHUB_REPO}`, { | ||
| signal: controller.signal, | ||
| }) | ||
| .then((res) => { |
Comment on lines
143
to
+146
| <div className="flex items-center gap-2"> | ||
| <GitHubStarsLink | ||
| className="hidden lg:flex items-center gap-2 text-[15px] font-medium tracking-tight text-zinc-600 hover:text-zinc-950 transition-colors" | ||
| /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add GitHub stars badge across public pages
What changed?
Added a reusable GitHub stars badge component that fetches and displays the current repository star count. The badge is now shown across key public-facing pages including landing, auth, contact, and app shell screens.
Why?
Improve open-source visibility and social proof for the project by making the GitHub repository more discoverable across the product experience.
Type of change
local_setupVerification
Verified GitHub star count loads correctly from the GitHub API
Verified cached star count is reused when API requests fail
Verified badge renders correctly on landing, auth, contact, and app shell pages
Verified external GitHub link opens in a new tab
Backend tests or relevant API checks
Frontend build or relevant browser check
Screenshots for meaningful UI changes
Safety checklist
.envfile is committed.backend/auth_provider.pyandbackend/llm_provider.pyremain intact.backend/.env.examplekeeps open-source-safe placeholder values.Rollback plan
Revert the GitHubStarsLink component and remove its usage from shared layouts and public pages.