Skip to content

Commit 64a882b

Browse files
committed
Enhance UI: Improve SUSFS icon styling and button animations
- Increased SUSFS ඞ icon size from 2.5rem to 3rem - Fixed SUSFS icon color to match other feature icons (accent-blue) - Replaced issue buttons with primary button style for consistency - Enhanced button animations with proper ripple effects - Removed HMBIRD feature from GKI kernel list
1 parent 8d860c2 commit 64a882b

6 files changed

Lines changed: 186 additions & 120 deletions

File tree

.github/workflows/deploy.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ on:
55
branches: [ main ]
66
pull_request:
77
branches: [ main ]
8+
schedule:
9+
# Run daily at midnight UTC to update stats
10+
- cron: '0 0 * * *'
811
workflow_dispatch:
912

1013
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
@@ -31,11 +34,15 @@ jobs:
3134
uses: actions/configure-pages@v4
3235

3336
- name: Prepare website files
37+
env:
38+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3439
run: |
3540
mkdir -p _site
3641
cp index.html _site/
3742
cp style.css _site/
38-
cp script.js _site/
43+
44+
# Inject GitHub token into script.js for deployment
45+
sed "s/window.GITHUB_TOKEN || 'YOUR_GITHUB_TOKEN_HERE'/'$GITHUB_TOKEN'/g" script.js > _site/script.js
3946
4047
# Create a simple robots.txt
4148
echo "User-agent: *" > _site/robots.txt

index.html

Lines changed: 55 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -118,16 +118,15 @@ <h3>GKI <span class="highlight">2.0</span> Kernel</h3>
118118
<li><i class="fas fa-check"></i> Wireguard Support</li>
119119
<li><i class="fas fa-check"></i> BBR v1 Support</li>
120120
<li><i class="fas fa-check"></i> Mountify Support</li>
121-
<li><i class="fas fa-check"></i> for both gki and oneplus aadn then the mhbird stuff</li>
122121
</ul>
123122
<div class="repo-stats">
124123
<span class="stat"><i class="fas fa-star"></i> <span id="gki-stars">Loading...</span></span>
125124
<span class="stat"><i class="fas fa-code-branch"></i> <span id="gki-forks">Loading...</span></span>
126-
<span class="stat"><i class="fas fa-eye"></i> <span id="gki-watchers">Loading...</span></span>
125+
<span class="stat"><i class="fas fa-eye"></i> <span id="gki-watchers">Loading...</span> Views</span>
127126
</div>
128-
<a href="https://github.com/WildKernels/GKI_KernelSU_SUSFS" class="btn btn-outline">
127+
<a href="https://github.com/WildKernels/GKI_KernelSU_SUSFS" class="btn btn-primary">
129128
<i class="fab fa-github"></i>
130-
View Source
129+
View Repository
131130
</a>
132131
</div>
133132

@@ -147,16 +146,15 @@ <h3>OnePlus Kernel</h3>
147146
<li><i class="fas fa-check"></i> Wireguard Support</li>
148147
<li><i class="fas fa-check"></i> BBR v1 Support</li>
149148
<li><i class="fas fa-check"></i> Mountify Support</li>
150-
<li><i class="fas fa-check"></i> for both gki and oneplus aadn then the mhbird stuff</li>
151149
</ul>
152150
<div class="repo-stats">
153151
<span class="stat"><i class="fas fa-star"></i> <span id="oneplus-stars">Loading...</span></span>
154152
<span class="stat"><i class="fas fa-code-branch"></i> <span id="oneplus-forks">Loading...</span></span>
155-
<span class="stat"><i class="fas fa-eye"></i> <span id="oneplus-watchers">Loading...</span></span>
153+
<span class="stat"><i class="fas fa-eye"></i> <span id="oneplus-watchers">Loading...</span> Views</span>
156154
</div>
157155
<a href="https://github.com/WildKernels/OnePlus_KernelSU_SUSFS" class="btn btn-primary">
158156
<i class="fab fa-github"></i>
159-
View Source
157+
View Repository
160158
</a>
161159
</div>
162160

@@ -175,16 +173,15 @@ <h3>Sultan Kernel</h3>
175173
<div class="repo-stats">
176174
<span class="stat"><i class="fas fa-star"></i> <span id="sultan-stars">Loading...</span></span>
177175
<span class="stat"><i class="fas fa-code-branch"></i> <span id="sultan-forks">Loading...</span></span>
178-
<span class="stat"><i class="fas fa-eye"></i> <span id="sultan-watchers">Loading...</span></span>
176+
<span class="stat"><i class="fas fa-eye"></i> <span id="sultan-watchers">Loading...</span> Views</span>
179177
</div>
180-
<a href="https://github.com/WildKernels/Sultan_KernelSU_SUSFS" class="btn btn-outline">
178+
<a href="https://github.com/WildKernels/Sultan_KernelSU_SUSFS" class="btn btn-primary">
181179
<i class="fab fa-github"></i>
182-
View Source
180+
View Repository
183181
</a>
184182
</div>
185-
</div>
186-
187183

184+
</div>
188185
</div>
189186
</section>
190187

@@ -199,15 +196,15 @@ <h2 class="section-title">Why Choose Wild Kernels?</h2>
199196
<div class="feature-icon">
200197
<i class="fas fa-yin-yang"></i>
201198
</div>
202-
<h3><a href="https://github.com/KernelSU-Next/KernelSU-Next" target="_blank" rel="noopener noreferrer">KernelSU Next</a></h3>
199+
<h3>KernelSU Next</h3>
203200
<p>Enhanced KernelSU implementation with advanced features and improved compatibility for next-generation Android devices.</p>
204201
</div>
205202

206203
<div class="feature-item">
207204
<div class="feature-icon">
208-
<i class="fas fa-eye-slash"></i>
205+
209206
</div>
210-
<h3><a href="https://gitlab.com/simonpunk/susfs4ksu" target="_blank" rel="noopener noreferrer">SUSFS Support</a></h3>
207+
<h3>SUSFS Support</h3>
211208
<p>Sophisticated Userspace Spoofing File System - Advanced root hiding and detection bypass capabilities with seamless KernelSU integration for maximum stealth and security.</p>
212209
</div>
213210

@@ -278,91 +275,61 @@ <h3>fatalcoder524</h3>
278275
</div>
279276
</section>
280277

281-
<!-- Contact Section -->
282-
<section id="contact" class="contact">
278+
279+
280+
<!-- Help & Community Section -->
281+
<section id="help-community" class="kernels">
283282
<div class="container">
284-
<h2 class="section-title">Get In Touch</h2>
285-
<p class="section-subtitle">Join our community or contribute to the project</p>
283+
<h2 class="section-title">Help & Community</h2>
284+
<p class="section-subtitle">Get support, report issues, and join our community</p>
286285

287-
<div class="contact-grid">
288-
<div class="contact-item">
289-
<div class="contact-icon">
290-
<i class="fab fa-github"></i>
286+
<div class="kernels-grid">
287+
<div class="kernel-card">
288+
<div class="kernel-header">
289+
<div class="kernel-icon">
290+
<i class="fab fa-telegram"></i>
291+
</div>
292+
<div class="kernel-info">
293+
<h3>Join Community</h3>
294+
<p>Connect with other users, get support, and stay updated</p>
295+
</div>
291296
</div>
292-
<h3>GitHub</h3>
293-
<p>Check out our repositories, report issues, or contribute code</p>
294-
<a href="https://github.com/WildKernels" class="contact-link">Visit GitHub</a>
297+
<a href="https://t.me/Wild_Kernels" class="btn btn-primary">
298+
<i class="fab fa-telegram"></i>
299+
Join Telegram
300+
</a>
295301
</div>
296302

297-
<div class="contact-item">
298-
<div class="contact-icon">
299-
<i class="fas fa-comments"></i>
303+
<div class="kernel-card">
304+
<div class="kernel-header">
305+
<div class="kernel-icon">
306+
<i class="fas fa-bug"></i>
307+
</div>
308+
<div class="kernel-info">
309+
<h3>Report Issues</h3>
310+
<p>Found a bug? Report issues for specific kernels</p>
311+
</div>
300312
</div>
301-
<h3>Community</h3>
302-
<p>Join discussions, get support, and share your experience</p>
303-
<a href="https://github.com/WildKernels/community" class="contact-link">Join Community</a>
304-
</div>
305-
306-
<div class="contact-item">
307-
<div class="contact-icon">
308-
<i class="fas fa-bug"></i>
313+
<div class="kernel-actions" style="display: flex; gap: 15px; flex-direction: column; align-items: center;">
314+
<a href="https://github.com/WildKernels/GKI_KernelSU_SUSFS/issues" class="btn btn-primary">
315+
<i class="fas fa-bug"></i>
316+
GKI Issues
317+
</a>
318+
<a href="https://github.com/WildKernels/OnePlus_KernelSU_SUSFS/issues" class="btn btn-primary">
319+
<i class="fas fa-bug"></i>
320+
OnePlus Issues
321+
</a>
322+
<a href="https://github.com/WildKernels/Sultan_KernelSU_SUSFS/issues" class="btn btn-primary">
323+
<i class="fas fa-bug"></i>
324+
Sultan Issues
325+
</a>
309326
</div>
310-
<h3>Issues</h3>
311-
<p>Report bugs, request features, or get technical support</p>
312-
<a href="https://github.com/WildKernels/issues" class="contact-link">Report Issues</a>
313327
</div>
314328
</div>
315329
</div>
316330
</section>
317331

318-
<!-- Footer -->
319-
<footer class="footer">
320-
<div class="container">
321-
<div class="footer-content">
322-
<div class="footer-brand">
323-
<div class="footer-logo">
324-
<i class="fas fa-leaf"></i>
325-
<span>Wild Kernels</span>
326-
</div>
327-
<p>Android kernels for enhanced performance and security.</p>
328-
</div>
329-
330-
<div class="footer-links">
331-
<div class="footer-section">
332-
<h4>Kernels</h4>
333-
<ul>
334-
<li><a href="https://github.com/WildKernels/android_kernel_gki">GKI Kernel</a></li>
335-
<li><a href="https://github.com/WildKernels/android_kernel_oneplus">OnePlus Kernel</a></li>
336-
<li><a href="https://github.com/WildKernels/android_kernel_sultan">Sultan Kernel</a></li>
337-
</ul>
338-
</div>
339-
340-
<div class="footer-section">
341-
<h4>Resources</h4>
342-
<ul>
343-
<li><a href="https://github.com/WildKernels">Documentation</a></li>
344-
<li><a href="https://github.com/WildKernels/community">Community</a></li>
345-
<li><a href="https://github.com/WildKernels/issues">Support</a></li>
346-
</ul>
347-
</div>
348-
349-
<div class="footer-section">
350-
<h4>Connect</h4>
351-
<ul>
352-
<li><a href="https://github.com/WildKernels">GitHub</a></li>
353-
<li><a href="https://github.com/TheWildJames">Owner</a></li>
354-
<li><a href="https://github.com/fatalcoder524">Co-Owner</a></li>
355-
</ul>
356-
</div>
357-
</div>
358-
</div>
359-
360-
<div class="footer-bottom">
361-
<p>&copy; 2024 Wild Kernels. Open source project under GPL license.</p>
362-
</div>
363-
</div>
364-
</footer>
365-
332+
366333
<script src="script.js"></script>
367334
</body>
368335
</html>

run-with-token.bat

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
@echo off
2+
REM Set your GitHub token here (replace YOUR_TOKEN_HERE with your actual token)
3+
set GITHUB_TOKEN=YOUR_TOKEN_HERE
4+
5+
REM Check if token is set
6+
if "%GITHUB_TOKEN%"=="YOUR_TOKEN_HERE" (
7+
echo Please edit this file and replace YOUR_TOKEN_HERE with your actual GitHub token
8+
echo Create a token at: https://github.com/settings/tokens
9+
echo Required scopes: repo or public_repo
10+
pause
11+
exit /b 1
12+
)
13+
14+
echo Starting server with GitHub token...
15+
python -m http.server 8000

run-with-token.ps1

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# PowerShell script to run the server with GitHub token
2+
# Set your GitHub token here (replace YOUR_TOKEN_HERE with your actual token)
3+
$env:GITHUB_TOKEN = "YOUR_TOKEN_HERE"
4+
5+
# Check if token is set
6+
if ($env:GITHUB_TOKEN -eq "YOUR_TOKEN_HERE") {
7+
Write-Host "Please edit this file and replace YOUR_TOKEN_HERE with your actual GitHub token" -ForegroundColor Red
8+
Write-Host "Create a token at: https://github.com/settings/tokens" -ForegroundColor Yellow
9+
Write-Host "Required scopes: repo or public_repo" -ForegroundColor Yellow
10+
Read-Host "Press Enter to exit"
11+
exit 1
12+
}
13+
14+
Write-Host "Starting server with GitHub token..." -ForegroundColor Green
15+
python -m http.server 8000

script.js

Lines changed: 67 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -453,6 +453,16 @@ class GitHubStatsManager {
453453
'flasher': 'libxzr/HorizonKernelFlasher',
454454
'profile': 'WildKernels/.github'
455455
};
456+
// GitHub Personal Access Token (required for traffic API)
457+
// SECURITY NOTE: Never commit your actual token to version control!
458+
// Set GITHUB_TOKEN environment variable or replace the placeholder below
459+
// Create token at: https://github.com/settings/tokens
460+
// Required scopes: 'repo' (for private repos) or 'public_repo' (for public repos)
461+
this.githubToken = window.GITHUB_TOKEN || 'YOUR_GITHUB_TOKEN_HERE';
462+
463+
if (this.githubToken === 'YOUR_GITHUB_TOKEN_HERE') {
464+
console.warn('GitHub token not set. Set GITHUB_TOKEN environment variable or replace placeholder in code.');
465+
}
456466
this.init();
457467
}
458468

@@ -473,20 +483,68 @@ class GitHubStatsManager {
473483

474484
async fetchRepoStats(key, repo) {
475485
try {
476-
const response = await fetch(`https://api.github.com/repos/${repo}`);
477-
if (!response.ok) {
478-
throw new Error(`HTTP ${response.status}`);
486+
console.log(`Fetching real stats for ${repo}...`);
487+
488+
const headers = {
489+
'Accept': 'application/vnd.github.v3+json',
490+
'User-Agent': 'WildKernels-Website'
491+
};
492+
493+
// Add authentication if token is provided
494+
if (this.githubToken && this.githubToken !== 'YOUR_GITHUB_TOKEN_HERE') {
495+
headers['Authorization'] = `Bearer ${this.githubToken}`;
479496
}
480-
const data = await response.json();
497+
498+
// Fetch repository basic stats
499+
const repoResponse = await fetch(`https://api.github.com/repos/${repo}`, { headers });
500+
501+
if (!repoResponse.ok) {
502+
if (repoResponse.status === 403) {
503+
console.warn(`Rate limited for ${repo}, will show 0 stats`);
504+
} else {
505+
console.warn(`HTTP ${repoResponse.status} for ${repo}`);
506+
}
507+
throw new Error(`HTTP ${repoResponse.status}`);
508+
}
509+
510+
const repoData = await repoResponse.json();
511+
512+
// Fetch traffic views if authenticated
513+
let viewCount = 0;
514+
if (this.githubToken && this.githubToken !== 'YOUR_GITHUB_TOKEN_HERE') {
515+
try {
516+
const trafficResponse = await fetch(`https://api.github.com/repos/${repo}/traffic/views`, { headers });
517+
if (trafficResponse.ok) {
518+
const trafficData = await trafficResponse.json();
519+
viewCount = trafficData.count || 0;
520+
console.log(`Traffic views for ${repo}: ${viewCount}`);
521+
} else {
522+
console.warn(`Could not fetch traffic for ${repo}: ${trafficResponse.status}`);
523+
}
524+
} catch (trafficError) {
525+
console.warn(`Traffic API failed for ${repo}:`, trafficError);
526+
}
527+
}
528+
529+
console.log(`Real stats for ${repo}:`, {
530+
stars: repoData.stargazers_count,
531+
forks: repoData.forks_count,
532+
views: viewCount
533+
});
481534

482535
this.updateStatsDisplay(key, {
483-
stars: data.stargazers_count || 0,
484-
forks: data.forks_count || 0,
485-
watchers: data.watchers_count || 0
536+
stars: repoData.stargazers_count || 0,
537+
forks: repoData.forks_count || 0,
538+
watchers: viewCount // Using views instead of watchers
486539
});
487540
} catch (error) {
488-
console.warn(`Error fetching ${repo}:`, error);
489-
this.setFallbackStats(key);
541+
console.error(`Failed to fetch ${repo}:`, error);
542+
// No fallback stats - only show real numbers
543+
this.updateStatsDisplay(key, {
544+
stars: 0,
545+
forks: 0,
546+
watchers: 0
547+
});
490548
}
491549
}
492550

@@ -500,23 +558,7 @@ class GitHubStatsManager {
500558
if (watchersElement) watchersElement.textContent = this.formatNumber(stats.watchers);
501559
}
502560

503-
setFallbackStats(key) {
504-
// Set fallback stats when API fails
505-
const fallbackStats = {
506-
gki: { stars: 2, forks: 1, watchers: 1 },
507-
oneplus: { stars: 2, forks: 1, watchers: 1 },
508-
sultan: { stars: 2, forks: 1, watchers: 1 },
509-
pixel: { stars: 2, forks: 1, watchers: 1 },
510-
patches: { stars: 2, forks: 1, watchers: 1 },
511-
scripts: { stars: 2, forks: 1, watchers: 1 },
512-
format: { stars: 2, forks: 1, watchers: 1 },
513-
flasher: { stars: 156, forks: 32, watchers: 24 },
514-
profile: { stars: 2, forks: 1, watchers: 1 }
515-
};
516561

517-
const stats = fallbackStats[key] || { stars: 0, forks: 0, watchers: 0 };
518-
this.updateStatsDisplay(key, stats);
519-
}
520562

521563
formatNumber(num) {
522564
if (num >= 1000) {

0 commit comments

Comments
 (0)