GitHub Profile Analyzer is a lightweight front-end project that turns a public GitHub username into a quick technical snapshot. It pulls live public data from the GitHub REST API and presents it as a clean, browser-based dashboard designed to make profile quality, repository traction, and activity patterns easy to scan.
This project focuses on a simple idea: take raw public GitHub profile data and reshape it into signals that are easier to scan, compare, and discuss. It keeps the surface area small, runs without framework or build tooling, and emphasizes clarity over complexity.
- Profile overview with follower, following, location, and bio details
- Computed profile score based on public activity and repository signals
- Compare mode for two public GitHub profiles
- Clickable sample chips for quick exploration
- Expandable score explanation with visible scoring criteria
- Repository metrics including stars, forks, watchers, and recent updates
- Top repositories ranked by public traction
- Language distribution across public repositories
- Recent public GitHub activity feed with daily and weekly event counts
- Built-in light and dark mode toggle
- Shareable profile links with
?user=<username>
- GitHub Pages:
https://gioleylee.github.io/github-profile-analyzer/
- Public profile signals such as followers, following, account age, and profile completeness
- Repository footprint including public repos, stars, forks, watchers, and recent updates
- Language distribution and overlap in compare mode
- Recent public GitHub events shown as activity feed plus daily and weekly counts
- An opinionated heuristic score based on visible public signals, not an official GitHub metric
- API integration against a real public data source
- Client-side data transformation and scoring logic
- Responsive UI design without a framework
- Thoughtful information hierarchy for scan-heavy use cases
- Lightweight product thinking with zero setup required
- HTML
- CSS
- Vanilla JavaScript
- GitHub REST API
- Clone or download the project.
- Open
index.htmlin a browser. - Search for any public GitHub username, or use the built-in sample chips.
- No build step: the project opens directly in the browser, which keeps the setup friction close to zero.
- Live data: the analyzer uses GitHub's public REST API rather than mocked data, so the experience stays grounded in real profiles.
- Clear synthesis over raw output: the interface emphasizes summaries, top signals, and public traction rather than dumping API responses.
- Shareable state: the selected username is stored in the URL for easy linking and repeatable demos.
fetch -> aggregate -> score -> render
- Fetch: request public user, repository, and event data from the GitHub API
- Aggregate: derive totals, language mix, top repos, and recent activity counts
- Score: calculate an opinionated profile score from visible public signals
- Render: update the dashboard cards and charts in the browser
.
|-- index.html
|-- styles.css
|-- app.js
|-- profile_analyzer_preview.png
|-- README.md
`-- .gitignore
- Add export or snapshot sharing for a generated profile view
- The app only analyzes public GitHub data.
- Anonymous GitHub API requests may be rate-limited.
- Results depend on the profile data GitHub exposes publicly.
