S-Dreamer commited on
Commit
7d2399f
·
verified ·
1 Parent(s): 23afdf6

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +6 -4
  2. index.html +373 -19
  3. prompts.txt +0 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Repo Analyser
3
- emoji: 😻
4
  colorFrom: blue
5
- colorTo: indigo
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: repo-analyser
3
+ emoji: 🐳
4
  colorFrom: blue
5
+ colorTo: gray
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,373 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>GitHub Repository Analyzer</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <script>
10
+ tailwind.config = {
11
+ darkMode: 'class',
12
+ theme: {
13
+ extend: {
14
+ colors: {
15
+ dark: {
16
+ 100: '#1e293b',
17
+ 200: '#0f172a',
18
+ 300: '#020617',
19
+ },
20
+ light: {
21
+ 100: '#f8fafc',
22
+ 200: '#e2e8f0',
23
+ 300: '#cbd5e1',
24
+ }
25
+ }
26
+ }
27
+ }
28
+ }
29
+ </script>
30
+ <style>
31
+ .dark .gradient-bg {
32
+ background: linear-gradient(to right, #0f172a, #1e293b);
33
+ }
34
+ .light .gradient-bg {
35
+ background: linear-gradient(to right, #e2e8f0, #f8fafc);
36
+ }
37
+ .code-block {
38
+ font-family: 'Courier New', monospace;
39
+ border-radius: 0.5rem;
40
+ overflow-x: auto;
41
+ }
42
+ .chart-container {
43
+ height: 400px;
44
+ width: 100%;
45
+ }
46
+ .issue-tag {
47
+ display: inline-flex;
48
+ align-items: center;
49
+ padding: 0.25rem 0.75rem;
50
+ border-radius: 9999px;
51
+ font-size: 0.875rem;
52
+ font-weight: 600;
53
+ }
54
+ .transition-all {
55
+ transition: all 0.3s ease;
56
+ }
57
+ </style>
58
+ </head>
59
+ <body class="bg-light-100 text-gray-800 dark:bg-dark-200 dark:text-gray-200 transition-all">
60
+ <div class="min-h-screen flex flex-col">
61
+ <!-- Header -->
62
+ <header class="gradient-bg shadow-lg">
63
+ <div class="container mx-auto px-4 py-6">
64
+ <div class="flex justify-between items-center">
65
+ <div class="flex items-center space-x-2">
66
+ <i class="fab fa-github text-3xl"></i>
67
+ <h1 class="text-2xl font-bold">GitHub Repository Analyzer</h1>
68
+ </div>
69
+ <div class="flex items-center space-x-4">
70
+ <button id="themeToggle" class="p-2 rounded-full bg-white dark:bg-dark-100 shadow">
71
+ <i class="fas fa-moon dark:hidden"></i>
72
+ <i class="fas fa-sun hidden dark:block"></i>
73
+ </button>
74
+ </div>
75
+ </div>
76
+ </div>
77
+ </header>
78
+
79
+ <!-- Main Content -->
80
+ <main class="flex-grow container mx-auto px-4 py-8">
81
+ <!-- Repository Input Section -->
82
+ <section class="mb-12">
83
+ <div class="bg-white dark:bg-dark-100 rounded-xl shadow-md p-6">
84
+ <h2 class="text-xl font-semibold mb-4">Analyze a Repository</h2>
85
+ <div class="flex flex-col md:flex-row gap-4">
86
+ <input
87
+ type="text"
88
+ placeholder="https://github.com/username/repository"
89
+ class="flex-grow px-4 py-3 rounded-lg border border-gray-300 dark:border-gray-600 bg-white dark:bg-dark-200 focus:outline-none focus:ring-2 focus:ring-blue-500"
90
+ >
91
+ <button class="px-6 py-3 bg-blue-600 hover:bg-blue-700 text-white font-medium rounded-lg transition-colors">
92
+ Analyze
93
+ </button>
94
+ </div>
95
+
96
+ <div class="mt-6 grid grid-cols-1 md:grid-cols-3 gap-4">
97
+ <!-- Analysis Level -->
98
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
99
+ <h3 class="font-medium mb-2">Analysis Level</h3>
100
+ <div class="space-y-2">
101
+ <label class="flex items-center space-x-2">
102
+ <input type="radio" name="analysisLevel" checked class="text-blue-600">
103
+ <span>Basic</span>
104
+ </label>
105
+ <label class="flex items-center space-x-2">
106
+ <input type="radio" name="analysisLevel" class="text-blue-600">
107
+ <span>Standard</span>
108
+ </label>
109
+ <label class="flex items-center space-x-2">
110
+ <input type="radio" name="analysisLevel" class="text-blue-600">
111
+ <span>Deep</span>
112
+ </label>
113
+ </div>
114
+ </div>
115
+
116
+ <!-- File Types -->
117
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
118
+ <h3 class="font-medium mb-2">File Types</h3>
119
+ <div class="space-y-2">
120
+ <label class="flex items-center space-x-2">
121
+ <input type="checkbox" checked class="text-blue-600">
122
+ <span>.js</span>
123
+ </label>
124
+ <label class="flex items-center space-x-2">
125
+ <input type="checkbox" checked class="text-blue-600">
126
+ <span>.py</span>
127
+ </label>
128
+ <label class="flex items-center space-x-2">
129
+ <input type="checkbox" checked class="text-blue-600">
130
+ <span>.java</span>
131
+ </label>
132
+ <label class="flex items-center space-x-2">
133
+ <input type="checkbox" class="text-blue-600">
134
+ <span>All files</span>
135
+ </label>
136
+ </div>
137
+ </div>
138
+
139
+ <!-- Additional Options -->
140
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
141
+ <h3 class="font-medium mb-2">Additional Options</h3>
142
+ <div class="space-y-2">
143
+ <label class="flex items-center space-x-2">
144
+ <input type="checkbox" class="text-blue-600">
145
+ <span>Include commit history</span>
146
+ </label>
147
+ <label class="flex items-center space-x-2">
148
+ <input type="checkbox" checked class="text-blue-600">
149
+ <span>Show improvement suggestions</span>
150
+ </label>
151
+ <label class="flex items-center space-x-2">
152
+ <input type="checkbox" class="text-blue-600">
153
+ <span>Compare with similar projects</span>
154
+ </label>
155
+ </div>
156
+ </div>
157
+ </div>
158
+ </div>
159
+ </section>
160
+
161
+ <!-- Analysis Results (Sample) -->
162
+ <section class="mb-12">
163
+ <div class="bg-white dark:bg-dark-100 rounded-xl shadow-md p-6">
164
+ <h2 class="text-xl font-semibold mb-6">Analysis Results</h2>
165
+
166
+ <!-- Summary Cards -->
167
+ <div class="grid grid-cols-1 md:grid-cols-4 gap-4 mb-8">
168
+ <div class="bg-blue-50 dark:bg-blue-900/20 p-4 rounded-lg">
169
+ <div class="text-blue-600 dark:text-blue-400 font-medium">Files Analyzed</div>
170
+ <div class="text-2xl font-bold">142</div>
171
+ </div>
172
+ <div class="bg-green-50 dark:bg-green-900/20 p-4 rounded-lg">
173
+ <div class="text-green-600 dark:text-green-400 font-medium">Issues Found</div>
174
+ <div class="text-2xl font-bold">23</div>
175
+ </div>
176
+ <div class="bg-yellow-50 dark:bg-yellow-900/20 p-4 rounded-lg">
177
+ <div class="text-yellow-600 dark:text-yellow-400 font-medium">Code Quality</div>
178
+ <div class="text-2xl font-bold">78%</div>
179
+ </div>
180
+ <div class="bg-purple-50 dark:bg-purple-900/20 p-4 rounded-lg">
181
+ <div class="text-purple-600 dark:text-purple-400 font-medium">Complexity</div>
182
+ <div class="text-2xl font-bold">Medium</div>
183
+ </div>
184
+ </div>
185
+
186
+ <!-- Charts -->
187
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
188
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
189
+ <h3 class="font-medium mb-4">Issue Types Distribution</h3>
190
+ <div class="chart-container">
191
+ <!-- Placeholder for chart -->
192
+ <div class="flex items-center justify-center h-full bg-gray-100 dark:bg-gray-800 rounded">
193
+ <span class="text-gray-500">Chart will appear here</span>
194
+ </div>
195
+ </div>
196
+ </div>
197
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
198
+ <h3 class="font-medium mb-4">Code Quality Over Time</h3>
199
+ <div class="chart-container">
200
+ <!-- Placeholder for chart -->
201
+ <div class="flex items-center justify-center h-full bg-gray-100 dark:bg-gray-800 rounded">
202
+ <span class="text-gray-500">Chart will appear here</span>
203
+ </div>
204
+ </div>
205
+ </div>
206
+ </div>
207
+
208
+ <!-- Issues List -->
209
+ <div class="mb-8">
210
+ <h3 class="text-lg font-semibold mb-4">Detected Issues</h3>
211
+ <div class="space-y-4">
212
+ <!-- Issue 1 -->
213
+ <div class="border-l-4 border-red-500 pl-4 py-2 bg-red-50/50 dark:bg-red-900/10 rounded-r">
214
+ <div class="flex justify-between items-start">
215
+ <div>
216
+ <span class="issue-tag bg-red-100 dark:bg-red-900/30 text-red-800 dark:text-red-300 mr-2">
217
+ <i class="fas fa-exclamation-circle mr-1"></i> Security
218
+ </span>
219
+ <span class="issue-tag bg-yellow-100 dark:bg-yellow-900/30 text-yellow-800 dark:text-yellow-300">
220
+ <i class="fas fa-bolt mr-1"></i> High Priority
221
+ </span>
222
+ <h4 class="font-medium mt-2">Hardcoded API Key</h4>
223
+ </div>
224
+ <button class="text-blue-600 dark:text-blue-400 hover:underline">View File</button>
225
+ </div>
226
+ <p class="text-sm text-gray-600 dark:text-gray-400 mt-1">Found in: src/utils/api.js (Line 42)</p>
227
+ <div class="mt-3 bg-gray-800 text-gray-100 p-3 rounded code-block">
228
+ <pre><code>const API_KEY = '1234-5678-9012-3456'; // Hardcoded credentials</code></pre>
229
+ </div>
230
+ <div class="mt-3 bg-green-50 dark:bg-green-900/10 p-3 rounded">
231
+ <h5 class="font-medium text-green-700 dark:text-green-400 mb-1">
232
+ <i class="fas fa-lightbulb mr-1"></i> Recommendation
233
+ </h5>
234
+ <p>Store sensitive information in environment variables instead of hardcoding them in the source files.</p>
235
+ <div class="mt-2 bg-gray-800 text-gray-100 p-3 rounded code-block">
236
+ <pre><code>const API_KEY = process.env.API_KEY; // Use environment variables</code></pre>
237
+ </div>
238
+ </div>
239
+ </div>
240
+
241
+ <!-- Issue 2 -->
242
+ <div class="border-l-4 border-orange-500 pl-4 py-2 bg-orange-50/50 dark:bg-orange-900/10 rounded-r">
243
+ <div class="flex justify-between items-start">
244
+ <div>
245
+ <span class="issue-tag bg-orange-100 dark:bg-orange-900/30 text-orange-800 dark:text-orange-300 mr-2">
246
+ <i class="fas fa-code mr-1"></i> Maintainability
247
+ </span>
248
+ <h4 class="font-medium mt-2">Overly Complex Function</h4>
249
+ </div>
250
+ <button class="text-blue-600 dark:text-blue-400 hover:underline">View File</button>
251
+ </div>
252
+ <p class="text-sm text-gray-600 dark:text-gray-400 mt-1">Found in: src/components/DataProcessor.js (Line 87)</p>
253
+ <p class="mt-2">The function <code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">processUserData()</code> has a cyclomatic complexity of 12 (recommended max is 10).</p>
254
+ <div class="mt-3 bg-green-50 dark:bg-green-900/10 p-3 rounded">
255
+ <h5 class="font-medium text-green-700 dark:text-green-400 mb-1">
256
+ <i class="fas fa-lightbulb mr-1"></i> Recommendation
257
+ </h5>
258
+ <p>Break down this function into smaller, more focused functions that each handle a specific part of the logic.</p>
259
+ </div>
260
+ </div>
261
+ </div>
262
+ </div>
263
+
264
+ <!-- Repository Insights -->
265
+ <div>
266
+ <h3 class="text-lg font-semibold mb-4">Repository Insights</h3>
267
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
268
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
269
+ <h4 class="font-medium mb-3">Top Contributors</h4>
270
+ <div class="space-y-3">
271
+ <div class="flex items-center">
272
+ <div class="w-8 h-8 rounded-full bg-blue-500 flex items-center justify-center text-white mr-3">JD</div>
273
+ <div class="flex-grow">
274
+ <div class="font-medium">John Doe</div>
275
+ <div class="text-sm text-gray-500 dark:text-gray-400">42 commits (56%)</div>
276
+ </div>
277
+ </div>
278
+ <div class="flex items-center">
279
+ <div class="w-8 h-8 rounded-full bg-green-500 flex items-center justify-center text-white mr-3">AS</div>
280
+ <div class="flex-grow">
281
+ <div class="font-medium">Alice Smith</div>
282
+ <div class="text-sm text-gray-500 dark:text-gray-400">24 commits (32%)</div>
283
+ </div>
284
+ </div>
285
+ <div class="flex items-center">
286
+ <div class="w-8 h-8 rounded-full bg-purple-500 flex items-center justify-center text-white mr-3">RJ</div>
287
+ <div class="flex-grow">
288
+ <div class="font-medium">Robert Johnson</div>
289
+ <div class="text-sm text-gray-500 dark:text-gray-400">8 commits (12%)</div>
290
+ </div>
291
+ </div>
292
+ </div>
293
+ </div>
294
+ <div class="bg-gray-50 dark:bg-dark-200 p-4 rounded-lg">
295
+ <h4 class="font-medium mb-3">Activity Overview</h4>
296
+ <div class="space-y-2">
297
+ <div class="flex justify-between">
298
+ <span>Last Commit</span>
299
+ <span class="font-medium">2 days ago</span>
300
+ </div>
301
+ <div class="flex justify-between">
302
+ <span>Most Active Day</span>
303
+ <span class="font-medium">Tuesday</span>
304
+ </div>
305
+ <div class="flex justify-between">
306
+ <span>Average Commits/Week</span>
307
+ <span class="font-medium">5.2</span>
308
+ </div>
309
+ <div class="flex justify-between">
310
+ <span>Issue Resolution Time</span>
311
+ <span class="font-medium">4.3 days</span>
312
+ </div>
313
+ </div>
314
+ </div>
315
+ </div>
316
+ </div>
317
+ </div>
318
+ </section>
319
+ </main>
320
+
321
+ <!-- Footer -->
322
+ <footer class="bg-gray-100 dark:bg-dark-100 py-6">
323
+ <div class="container mx-auto px-4 text-center">
324
+ <p class="text-gray-600 dark:text-gray-400">
325
+ GitHub Repository Analyzer &copy; 2023 |
326
+ <a href="#" class="text-blue-600 dark:text-blue-400 hover:underline">Privacy Policy</a> |
327
+ <a href="#" class="text-blue-600 dark:text-blue-400 hover:underline">Terms of Service</a>
328
+ </p>
329
+ <div class="flex justify-center space-x-4 mt-4">
330
+ <a href="#" class="text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400">
331
+ <i class="fab fa-github text-xl"></i>
332
+ </a>
333
+ <a href="#" class="text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400">
334
+ <i class="fab fa-twitter text-xl"></i>
335
+ </a>
336
+ <a href="#" class="text-gray-600 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400">
337
+ <i class="fab fa-discord text-xl"></i>
338
+ </a>
339
+ </div>
340
+ </div>
341
+ </footer>
342
+ </div>
343
+
344
+ <script>
345
+ // Theme toggle functionality
346
+ const themeToggle = document.getElementById('themeToggle');
347
+ const html = document.documentElement;
348
+
349
+ // Check for saved user preference or use system preference
350
+ const savedTheme = localStorage.getItem('theme');
351
+ if (savedTheme) {
352
+ html.classList.add(savedTheme);
353
+ } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
354
+ html.classList.add('dark');
355
+ }
356
+
357
+ themeToggle.addEventListener('click', () => {
358
+ html.classList.toggle('dark');
359
+ const theme = html.classList.contains('dark') ? 'dark' : 'light';
360
+ localStorage.setItem('theme', theme);
361
+ });
362
+
363
+ // Sample data for charts (would be replaced with real data in a production app)
364
+ function initCharts() {
365
+ // This would be replaced with actual chart initialization using a library like Chart.js or Plotly
366
+ console.log('Initializing charts...');
367
+ }
368
+
369
+ // Initialize when DOM is loaded
370
+ document.addEventListener('DOMContentLoaded', initCharts);
371
+ </script>
372
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=S-Dreamer/repo-analyser" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
373
+ </html>
prompts.txt ADDED
File without changes