-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
122 lines (115 loc) · 4.42 KB
/
index.html
File metadata and controls
122 lines (115 loc) · 4.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="theme-color" content="#f7f3ea">
<meta
name="description"
content="A lightweight browser app that analyzes public GitHub profiles, repositories, languages, and recent activity."
>
<title>GitHub Profile Analyzer</title>
<link rel="preconnect" href="https://api.github.com">
<link rel="preconnect" href="https://avatars.githubusercontent.com">
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="page-shell">
<header class="hero">
<div class="hero-topline">
<p class="eyebrow">GitHub Profile Analyzer</p>
<button
id="theme-toggle"
class="theme-toggle"
type="button"
aria-label="Switch color theme"
aria-pressed="false"
>
Dark mode
</button>
</div>
<h1>Turn a GitHub username into a quick technical snapshot.</h1>
<p class="hero-copy">
Review profile strength, repository health, language distribution, and recent public activity
without leaving the browser.
</p>
<div class="hero-points" aria-label="Project highlights">
<span class="hero-point">Live GitHub API data</span>
<span class="hero-point">No build step</span>
<span class="hero-point">Shareable profile links</span>
</div>
<form id="analyzer-form" class="search-panel">
<div class="input-grid">
<div>
<label for="username" class="label">GitHub username</label>
<input
id="username"
name="username"
type="text"
placeholder="octocat"
autocomplete="off"
spellcheck="false"
required
>
</div>
<div>
<label for="compare-username" class="label">Compare against (optional)</label>
<input
id="compare-username"
name="compare-username"
type="text"
placeholder="gaearon"
autocomplete="off"
spellcheck="false"
>
</div>
</div>
<div class="search-row search-actions">
<button type="submit">Analyze</button>
</div>
<p class="hint">
Use one username for a profile snapshot, or add a second username to compare two public GitHub profiles.
</p>
<div class="sample-chips" aria-label="Sample usernames">
<button class="sample-chip" type="button" data-primary="torvalds">Torvalds</button>
<button class="sample-chip" type="button" data-primary="gaearon">Gaearon</button>
<button class="sample-chip" type="button" data-primary="sindresorhus">Sindre</button>
<button class="sample-chip" type="button" data-primary="torvalds" data-compare="gaearon">Torvalds vs Gaearon</button>
<button class="sample-chip" type="button" data-primary="yyx990803" data-compare="vercel">Vue vs Vercel</button>
</div>
<section class="what-analyzes">
<h2>What this analyzes</h2>
<p>
Public GitHub profile data including followers, repositories, stars, languages, recent public events,
repository freshness, and a transparent score heuristic built from those visible signals.
</p>
</section>
</form>
</header>
<main id="results" class="results hidden" aria-live="polite">
<section class="card profile-card" id="profile-summary"></section>
<section class="grid">
<article class="card" id="score-card"></article>
<article class="card" id="repo-stats"></article>
<article class="card" id="language-breakdown"></article>
<article class="card" id="activity-feed"></article>
</section>
</main>
<section id="status-card" class="card status-card" aria-live="polite">
<div id="status-message">
Enter a public GitHub username to generate an analysis.
</div>
</section>
<footer class="page-footer">
<p>A lightweight front-end app for exploring public GitHub profiles through the GitHub REST API.</p>
</footer>
</div>
<template id="metric-template">
<div class="metric">
<span class="metric-label"></span>
<strong class="metric-value"></strong>
</div>
</template>
<script src="app.js"></script>
</body>
</html>