Repository navigation
Expand file tree
/
Copy pathindex.html
More file actions
163 lines (148 loc) · 6.32 KB
/
Copy pathindex.html
File metadata and controls
163 lines (148 loc) · 6.32 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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="GitHub Ladder - Track commits and pull requests leaderboard for GitHub organizations">
<title>Git Ladder - Contribution Hall of Fame</title>
<link rel="icon" href="images/favicon.ico" sizes="any">
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<!-- PWA -->
<link rel="manifest" href="manifest.json">
<meta name="theme-color" content="#000091">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<!-- Chart.js -->
<script src="vendor/chart.js"></script>
<!-- Styles -->
<link rel="stylesheet" href="src/css/style.css">
</head>
<body>
<!-- Theme Toggle -->
<button class="theme-toggle" id="themeToggle" aria-label="Toggle theme">
<span class="icon-sun">☀️</span>
<span class="icon-moon">🌙</span>
</button>
<div class="app">
<!-- Header -->
<header class="header">
<div class="header-content">
<div class="logo">
<span class="logo-icon">🏆</span>
<h1>Git Ladder</h1>
</div>
<div class="header-info" id="orgBadges">
<!-- Organization badges will be inserted dynamically -->
</div>
</div>
<p class="subtitle">Contribution Hall of Fame – Track commits & pull requests across organizations</p>
<p class="last-updated" id="lastUpdated">Last updated: Loading...</p>
</header>
<!-- Controls -->
<section class="controls">
<div class="control-group">
<label for="yearSelect">Year</label>
<select id="yearSelect" class="select">
<option value="all">All Years</option>
</select>
</div>
<div class="control-group">
<label for="monthSelect">Month</label>
<select id="monthSelect" class="select">
<option value="all">All Months</option>
<option value="01">January</option>
<option value="02">February</option>
<option value="03">March</option>
<option value="04">April</option>
<option value="05">May</option>
<option value="06">June</option>
<option value="07">July</option>
<option value="08">August</option>
<option value="09">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
</div>
<div class="control-group">
<label>Metric</label>
<div class="toggle-group">
<button class="toggle-btn" data-metric="commits">Commits</button>
<button class="toggle-btn active" data-metric="pullRequests">Pull Requests</button>
</div>
</div>
</section>
<!-- Excluded Users Chips -->
<section class="excluded-users-chips" id="excludedUsersChips">
<!-- Chips will be inserted here dynamically -->
</section>
<!-- KPI Cards -->
<section class="kpi-section" id="kpiSection">
<div class="kpi-card card">
<div class="kpi-icon">📝</div>
<div class="kpi-content">
<h3>Commits</h3>
<p class="kpi-value" id="kpiCommits">0</p>
</div>
</div>
<div class="kpi-card card">
<div class="kpi-icon">🔄</div>
<div class="kpi-content">
<h3>Pull Requests</h3>
<p class="kpi-value" id="kpiPRs">0</p>
</div>
</div>
<div class="kpi-card card">
<div class="kpi-icon">👥</div>
<div class="kpi-content">
<h3>Contributors</h3>
<p class="kpi-value" id="kpiContributors">0</p>
</div>
</div>
</section>
<!-- Main Content -->
<main class="main-content">
<!-- Leaderboard Chart -->
<section class="chart-section card">
<h2 class="section-title">🏅 Hall of Fame</h2>
<div class="chart-container">
<canvas id="leaderboardChart"></canvas>
</div>
</section>
<!-- Trend Chart -->
<section class="chart-section card" id="trendChartSection">
<h2 class="section-title">📈 Monthly Trends</h2>
<div class="chart-container">
<canvas id="trendChart"></canvas>
</div>
</section>
<!-- User Cards -->
<section class="users-section card">
<h2 class="section-title">👥 Contributors</h2>
<div class="users-grid" id="usersGrid">
<!-- User cards will be inserted here -->
</div>
</section>
</main>
<!-- Footer -->
<footer class="footer">
<p>Data fetched from GitHub API • Updated daily via GitHub Actions</p>
<p class="footer-links" id="footerLinks">
<!-- Organization links will be inserted dynamically -->
</p>
<p class="copyright">
<a href="https://github.com/froozeify/git-ladder" target="_blank">Git Ladder</a>
was created by <a href="https://github.com/froozeify" target="_blank">Benoît VIGNAL</a>
</p>
</footer>
</div>
<!-- Scripts -->
<script src="src/js/pwa.js"></script>
<script src="src/js/ThemeManager.js"></script>
<script src="src/js/DataService.js"></script>
<script src="src/js/ChartManager.js"></script>
<script src="src/js/App.js"></script>
</body>
</html>