-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
211 lines (196 loc) · 13 KB
/
index.html
File metadata and controls
211 lines (196 loc) · 13 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
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Primary Meta Tags -->
<title>Bettorr - Modern Game Torrent Search Engine</title>
<meta name="title" content="Bettorr - Game Torrent Search Engine | Find PC Games Fast">
<meta name="description" content="Search and download PC games from multiple trusted sources including DODI, FitGirl, KaosKrew, OnlineFix, and Xatab. Fast, secure, and user-friendly game torrent search engine.">
<meta name="keywords" content="game torrents, PC games, game downloads, DODI repacks, FitGirl repacks, KaosKrew, OnlineFix, Xatab, torrent search, game search engine, free games, game repacks, gaming torrents, torrenting, game piracy, cracked games, pirated games, download games free, magnet links, torrent magnet, game ISO, repack games, video game torrents, PC gaming, game crack, game patches, game updates, multiplayer cracks, game installer, no DRM games, scene releases, warez, game mods, game hacks, game cheats, game releases, latest games, popular games, best game torrents, safe torrents, trusted torrents, torrent index, torrent aggregator, torrent finder, torrent downloader, torrent tracker, torrent portal, gaming community, game sharing, game backup, game archive, game library, indie games, AAA games, old games, retro games, new games, online games, offline games, single player games, multiplayer games, action games, adventure games, RPG, FPS, strategy games, simulation games, sports games, racing games, puzzle games, horror games, casual games, open world games, sandbox games, PC software, digital downloads, entertainment, bettorr">
<meta name="author" content="Bettorr">
<meta name="robots" content="index, follow">
<meta name="language" content="English">
<meta name="revisit-after" content="7 days">
<!-- Favicon -->
<link rel="icon" type="image/x-icon" href="assets/favicon.ico">
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="https://bettorr.vercel.app/">
<meta property="og:title" content="Bettorr - The Modern Game Torrent Search Engine">
<meta property="og:description" content="Search and download PC games from multiple trusted sources.">
<meta property="og:image" content="https://bettorr.vercel.app/assets/banner.png">
<meta property="og:site_name" content="Bettorr">
<meta property="og:locale" content="en_US">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="https://bettorr.vercel.app/">
<meta property="twitter:title" content="Bettorr - The Modern Game Torrent Search Engine">
<meta property="twitter:description" content="Search and download PC games from multiple trusted sources.">
<meta property="twitter:image" content="https://bettorr.vercel.app/assets/banner.png">
<!-- Additional SEO Meta Tags -->
<meta name="theme-color" content="#0a0a0a">
<meta name="msapplication-TileColor" content="#0a0a0a">
<meta name="msapplication-config" content="/browserconfig.xml">
<link rel="canonical" href="https://bettorr.vercel.app/">
<!-- PWA Manifest -->
<link rel="manifest" href="manifest.json">
<!-- Preconnect for performance -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preconnect" href="https://cdnjs.cloudflare.com">
<!-- Stylesheets -->
<link rel="stylesheet" href="styles.css">
<link href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@10..48,300;10..48,400;10..48,500;10..48,600;10..48,700&family=Fira+Mono:wght@400;500&display=swap" rel="stylesheet">
<!-- Structured Data -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebApplication",
"name": "Bettorr",
"description": "Game torrent search engine for finding PC games from multiple trusted sources",
"url": "https://bettorr.vercel.app",
"applicationCategory": "EntertainmentApplication",
"operatingSystem": "Web Browser",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD"
},
"author": {
"@type": "Organization",
"name": "Bettorr",
"url": "https://github.com/ctrlcat0x/bettorr"
},
"featureList": [
"Game torrent search",
"Multiple source aggregation",
"Real-time search with autocomplete",
"Direct magnet link downloads",
"Source filtering",
"Responsive design"
]
}
</script>
</head>
<body>
<div class="app-container">
<header class="app-header">
<div class="header-left">
<a href="" class="header-title">bettorr.</a>
<a href="/about.html" class="header-link">About bettorr</a>
<a href="https://github.com/ctrlcat0x/bettorr" target="_blank" class="header-link">View Code</a>
</div>
<div class="header-right">
<a href="https://github.com/ctrlcat0x/bettorr" target="_blank" class="github-link">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github-icon lucide-github"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"/><path d="M9 18c-4.51 2-5-2-7-2"/></svg>
<span>Give us a star</span>
</a>
<button class="theme-toggle-btn" data-theme-btn aria-label="Toggle theme">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-swatch-book-icon lucide-swatch-book"><path d="M11 17a4 4 0 0 1-8 0V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2Z"/><path d="M16.7 13H19a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H7"/><path d="M 7 17h.01"/><path d="m11 8 2.3-2.3a2.4 2.4 0 0 1 3.404.004L18.6 7.6a2.4 2.4 0 0 1 .026 3.434L9.9 19.8"/></svg>
</button>
</div>
</header>
<main class="app-main">
<div class="centered-content">
<div class="filter-bar">
<div class="search-wrapper">
<svg class="search-icon" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/></svg>
<input type="text" id="searchInput" placeholder="Search for a game..." autocomplete="off">
<div id="autocomplete" class="autocomplete-dropdown hidden"></div>
<div class="search-shortcut-indicator">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-keyboard"><rect width="18" height="14" x="3" y="5" rx="2"/><path d="M7 8h.01"/><path d="M7 12h.01"/><path d="M12 8h.01"/><path d="M12 12h.01"/><path d="M17 8h.01"/><path d="M17 12h.01"/></svg>
<span class="shortcut-label">Ctrl+K</span>
</div>
</div>
<div class="view-toggle-wrapper flex gap-2">
<div class="view-btns">
<button id="filterBtn" class="view-btn">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"/></svg>
<span>Filter</span>
</button>
<button id="viewToggleBtn" class="view-btn" aria-label="Toggle view mode">
<svg id="viewToggleIcon" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rows2-icon lucide-rows-2"><rect width="18" height="18" x="3" y="3" rx="2"/><path d="M3 12h18"/></svg>
<span>View</span>
</button>
</div>
<div id="sourceFilterDropdown" class="source-filter-dropdown hidden">
<div class="dropdown-header">Toggle Sources</div>
<label class="source-toggle">
<input type="checkbox" name="source" value="dodi" checked>
<span class="label-text">DODI</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="fitgirl" checked>
<span class="label-text">FitGirl</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="kaoskrew" checked>
<span class="label-text">KaosKrew</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="onlinefix" checked>
<span class="label-text">OnlineFix</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="xatab" checked>
<span class="label-text">Xatab</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="rutracker" checked>
<span class="label-text">RuTracker</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="shisuy" checked>
<span class="label-text">Shisuy</span>
</label>
<label class="source-toggle">
<input type="checkbox" name="source" value="tinyrepacks" checked>
<span class="label-text">TinyRepacks</span>
</label>
</div>
</div>
</div>
<div id="resultsTitle" class="results-title text-xl font-bold mb-4"></div>
<div id="resultsContainer" class="results-container">
<!-- JS will populate this -->
</div>
</div>
</main>
<footer class="app-footer">
<div class="footer-left">
<span>© 2025 bettorr.</span>
</div>
<div class="footer-center">
<span>The modern game torrent search engine. No ads, no tracking, no bullshit. No registration required. Proudly Open-Source.</span>
</div>
<div class="footer-right">
<a href="/DMCA.html">DMCA Notice</a>
</div>
</footer>
</div>
<div id="toast" class="toast-notification hidden"></div>
<script src="script.js"></script>
<script>
window.va = window.va || function () { (window.vaq = window.vaq || []).push(arguments); };
window.si = window.si || function () { (window.siq = window.siq || []).push(arguments); };
</script>
<script defer src="/_vercel/insights/script.js"></script>
<script defer src="/_vercel/speed-insights/script.js"></script>
<!-- GSAP for animations -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/gsap.min.js"></script>
<script>
window.addEventListener('DOMContentLoaded', () => {
gsap.from('.app-header', { y: -60, opacity: 0, duration: 0.7, ease: 'power2.out' });
gsap.from('.app-footer', { y: 60, opacity: 0, duration: 0.7, ease: 'power2.out', delay: 0.15 });
gsap.from('.centered-content, .app-main > *:not(.app-header):not(.app-footer)', {
opacity: 0,
y: 24,
duration: 0.7,
ease: 'power2.out',
delay: 0.25
});
});
</script>
</body>
</html>