|
1
|
import { useState, useMemo } from "react"; |
|
2
|
import { |
|
3
|
Download, |
|
4
|
ExternalLink, |
|
5
|
Search, |
|
6
|
CheckCircle2, |
|
7
|
ShieldCheck, |
|
8
|
Cpu, |
|
9
|
HardDrive, |
|
10
|
Layers, |
|
11
|
Terminal, |
|
12
|
FileCode, |
|
13
|
Sparkles, |
|
14
|
Copy, |
|
15
|
Check, |
|
16
|
AlertCircle, |
|
17
|
FileArchive, |
|
18
|
FileText, |
|
19
|
Zap, |
|
20
|
Filter, |
|
21
|
ArrowDownToLine, |
|
22
|
SlidersHorizontal, |
|
23
|
Binary, |
|
24
|
FolderDown, |
|
25
|
Gauge, |
|
26
|
Thermometer, |
|
27
|
Disc, |
|
28
|
Activity, |
|
29
|
Network, |
|
30
|
Wrench, |
|
31
|
Flame, |
|
32
|
BatteryCharging, |
|
33
|
ShieldAlert, |
|
34
|
Radio |
|
35
|
} from "lucide-react"; |
|
36
|
import { Input } from "@/components/ui/input"; |
|
37
|
import { Button } from "@/components/ui/button"; |
|
38
|
import { Badge } from "@/components/ui/badge"; |
|
39
|
import { useToast } from "@/hooks/use-toast"; |
|
40
|
import { cn } from "@/lib/utils"; |
|
41
|
|
|
42
|
export interface DownloadItem { |
|
43
|
id: string; |
|
44
|
name: string; |
|
45
|
developer: string; |
|
46
|
category: "diagnostics" | "storage" | "memory" | "bootable" | "drivers" | "thermals" | "internals" | "bundles"; |
|
47
|
categoryLabel: string; |
|
48
|
description: string; |
|
49
|
fileSize: string; |
|
50
|
version: string; |
|
51
|
license: "Free" | "Open Source" | "Freemium" | "Official Bundle" | "Official Utility"; |
|
52
|
url: string; |
|
53
|
directDownloadUrl?: string; |
|
54
|
sha256?: string; |
|
55
|
platforms: string[]; |
|
56
|
recommendedUse: string; |
|
57
|
icon: any; |
|
58
|
featured?: boolean; |
|
59
|
} |
|
60
|
|
|
61
|
export const ALL_DOWNLOADS: DownloadItem[] = [ |
|
62
|
// ========================================== |
|
63
|
// Master Offline Download Bundles (2) |
|
64
|
// ========================================== |
|
65
|
{ |
|
66
|
id: "bundle-all-manuals", |
|
67
|
name: "JCRGuru Complete Offline Technical Manuals & Schematics Pack", |
|
68
|
developer: "JCR Engineering Lab", |
|
69
|
category: "bundles", |
|
70
|
categoryLabel: "Master Offline Bundle", |
|
71
|
description: "Complete offline archive containing all verified hardware teardown guides, motherboard power delivery schematics, BSOD minidump manuals, and thermal PTM7950 application protocols.", |
|
72
|
fileSize: "48.5 MB ZIP", |
|
73
|
version: "2026.4 v4", |
|
74
|
license: "Official Bundle", |
|
75
|
url: "#download-offline-pack", |
|
76
|
directDownloadUrl: "#offline-pack", |
|
77
|
sha256: "8e9f2a41d7c30b8b1e4c9f7a5d2e0b1c3a6f8e4d2c7b5a1f9e3d6c8b4a2f0e1d", |
|
78
|
platforms: ["Windows", "macOS", "Linux", "Android"], |
|
79
|
recommendedUse: "Complete offline bench repair kit when internet access is unavailable or on air-gapped customer sites.", |
|
80
|
icon: FileArchive, |
|
81
|
featured: true, |
|
82
|
}, |
|
83
|
{ |
|
84
|
id: "bundle-torque-cheatsheet", |
|
85
|
name: "Bench Safety Directives & Chassis Screw Torque Reference Matrix", |
|
86
|
developer: "JCR Bench Safety Group", |
|
87
|
category: "bundles", |
|
88
|
categoryLabel: "Printable Matrix", |
|
89
|
description: "High-resolution printable bench reference chart covering M2/M2.5 screw torque limits (0.2 - 0.5 Nm), ESD dissipation resistance, and thermal pad thickness tolerances.", |
|
90
|
fileSize: "3.8 MB PDF", |
|
91
|
version: "Rev 2026.2", |
|
92
|
license: "Official Bundle", |
|
93
|
url: "#download-torque-chart", |
|
94
|
directDownloadUrl: "#torque-chart", |
|
95
|
sha256: "3b7c9e1f5a8d2c4e6f0b1a3d5e7c9f2a4b6d8e0f1a3c5e7b9d1f3a5c7e9b1d3f", |
|
96
|
platforms: ["PDF Printable", "Any Device"], |
|
97
|
recommendedUse: "Laminated bench workstation quick reference for avoiding stripped magnesium screw bosses.", |
|
98
|
icon: FileText, |
|
99
|
featured: true, |
|
100
|
}, |
|
101
|
|
|
102
|
// ========================================== |
|
103
|
// Diagnostics & Hardware Telemetry (12) |
|
104
|
// ========================================== |
|
105
|
{ |
|
106
|
id: "hwinfo64", |
|
107
|
name: "HWiNFO64 Diagnostics & Sensor Telemetry Suite", |
|
108
|
developer: "REALiX", |
|
109
|
category: "diagnostics", |
|
110
|
categoryLabel: "Hardware Telemetry", |
|
111
|
description: "Industry-standard real-time hardware telemetry engine. Monitors VRM mosfet temperatures, GPU hotspot deltas, 12VHPWR voltage droop, and CPU package thermal throttling.", |
|
112
|
fileSize: "12.4 MB", |
|
113
|
version: "v8.02 Portable", |
|
114
|
license: "Free", |
|
115
|
url: "https://www.hwinfo.com/download/", |
|
116
|
directDownloadUrl: "https://www.hwinfo.com/download/", |
|
117
|
sha256: "a1c2e3f4b5d6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2", |
|
118
|
platforms: ["Windows 11 / 10 / 8 / 7 (64-bit)"], |
|
119
|
recommendedUse: "Verifying thermal dissipation after repasting and isolating VRM voltage instability.", |
|
120
|
icon: Cpu, |
|
121
|
featured: true, |
|
122
|
}, |
|
123
|
{ |
|
124
|
id: "cpuz", |
|
125
|
name: "CPU-Z Hardware Identification Utility", |
|
126
|
developer: "CPUID", |
|
127
|
category: "diagnostics", |
|
128
|
categoryLabel: "CPU & Memory SPD", |
|
129
|
description: "Inspects CPU stepping, microcode revisions, instruction set flags, motherboard chipset, and DDR4/DDR5 memory SPD timing profiles.", |
|
130
|
fileSize: "3.2 MB", |
|
131
|
version: "v2.09", |
|
132
|
license: "Free", |
|
133
|
url: "https://www.cpuid.com/softwares/cpu-z.html", |
|
134
|
directDownloadUrl: "https://www.cpuid.com/softwares/cpu-z.html", |
|
135
|
platforms: ["Windows 11 / 10", "Android"], |
|
136
|
recommendedUse: "Validating dual-channel RAM frequency configuration and checking installed BIOS versions.", |
|
137
|
icon: Cpu, |
|
138
|
}, |
|
139
|
{ |
|
140
|
id: "gpuz", |
|
141
|
name: "TechPowerUp GPU-Z Video Subsystem Inspector", |
|
142
|
developer: "TechPowerUp", |
|
143
|
category: "diagnostics", |
|
144
|
categoryLabel: "GPU & VRAM Analysis", |
|
145
|
description: "Inspects GPU die architectures, VRAM vendor (Samsung, Micron, SK Hynix), PCIe bus link width validation, and vBIOS ROM extraction.", |
|
146
|
fileSize: "9.8 MB", |
|
147
|
version: "v2.58", |
|
148
|
license: "Free", |
|
149
|
url: "https://www.techpowerup.com/gpuz/", |
|
150
|
directDownloadUrl: "https://www.techpowerup.com/gpuz/", |
|
151
|
platforms: ["Windows 11 / 10"], |
|
152
|
recommendedUse: "Isolating GPU PCIe lane bottlenecks, thermal junction hotspots, and saving backup vBIOS roms.", |
|
153
|
icon: Gauge, |
|
154
|
}, |
|
155
|
{ |
|
156
|
id: "librehw", |
|
157
|
name: "Libre Hardware Monitor (Open Source)", |
|
158
|
developer: "LibreHardwareMonitor Community", |
|
159
|
category: "diagnostics", |
|
160
|
categoryLabel: "Open Source Sensors", |
|
161
|
description: "100% free open-source telemetry tool with embedded HTTP web-server for remote bench monitoring and fan RPM tachometer graphs.", |
|
162
|
fileSize: "8.1 MB", |
|
163
|
version: "v0.9.3", |
|
164
|
license: "Open Source", |
|
165
|
url: "https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/releases", |
|
166
|
directDownloadUrl: "https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/releases", |
|
167
|
platforms: ["Windows 11 / 10"], |
|
168
|
recommendedUse: "Remote test-bench telemetry monitoring via browser without installing heavy commercial suites.", |
|
169
|
icon: Cpu, |
|
170
|
}, |
|
171
|
{ |
|
172
|
id: "furmark", |
|
173
|
name: "FurMark 2 OpenGL / Vulkan GPU Stress & Artifact Tester", |
|
174
|
developer: "Geeks3D", |
|
175
|
category: "diagnostics", |
|
176
|
categoryLabel: "GPU Burn-in & Artifacts", |
|
177
|
description: "Intensive 3D render stress test generating peak power load to uncover soldered VRAM cracked ball grids, failing MOSFETs, and thermal runaway.", |
|
178
|
fileSize: "18.2 MB", |
|
179
|
version: "v2.2.0", |
|
180
|
license: "Free", |
|
181
|
url: "https://www.geeks3d.com/furmark/", |
|
182
|
directDownloadUrl: "https://www.geeks3d.com/furmark/", |
|
183
|
platforms: ["Windows 11 / 10", "Linux 64-bit"], |
|
184
|
recommendedUse: "Testing graphics card stability under 100% power limit before finalizing GPU repairs.", |
|
185
|
icon: Flame, |
|
186
|
featured: true, |
|
187
|
}, |
|
188
|
{ |
|
189
|
id: "occt", |
|
190
|
name: "OCCT (OverClock Checking Tool) All-in-One Power Stress", |
|
191
|
developer: "OCBASE", |
|
192
|
category: "diagnostics", |
|
193
|
categoryLabel: "Hardware Error Checking", |
|
194
|
description: "Comprehensive hardware stress testing engine for CPU, Linpack, Memory, 3D Adaptive, VRAM, and ATX Power Supply voltage rail stability.", |
|
195
|
fileSize: "128 MB", |
|
196
|
version: "v13.1.0", |
|
197
|
license: "Freemium", |
|
198
|
url: "https://www.ocbase.com/download", |
|
199
|
directDownloadUrl: "https://www.ocbase.com/download", |
|
200
|
platforms: ["Windows 11 / 10 (64-bit)"], |
|
201
|
recommendedUse: "Isolating failing PSU 12V rails and catching intermittent AVX-512 calculation errors.", |
|
202
|
icon: Activity, |
|
203
|
featured: true, |
|
204
|
}, |
|
205
|
{ |
|
206
|
id: "bluescreenview", |
|
207
|
name: "BlueScreenView Minidump BSOD Crash Analyzer", |
|
208
|
developer: "NirSoft", |
|
209
|
category: "diagnostics", |
|
210
|
categoryLabel: "BSOD Crash Dump Analysis", |
|
211
|
description: "Scans all Windows minidump (.dmp) files created during Blue Screen crashes and highlights the faulting driver (.sys) and bugcheck stop codes.", |
|
212
|
fileSize: "140 KB", |
|
213
|
version: "v1.55 Portable", |
|
214
|
license: "Free", |
|
215
|
url: "https://www.nirsoft.net/utils/blue_screen_view.html", |
|
216
|
directDownloadUrl: "https://www.nirsoft.net/utils/blue_screen_view.html", |
|
217
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
218
|
recommendedUse: "Instantly determining whether a BSOD was caused by a bad graphics driver, corrupted RAM, or failing SSD.", |
|
219
|
icon: ShieldAlert, |
|
220
|
featured: true, |
|
221
|
}, |
|
222
|
{ |
|
223
|
id: "whocrashed", |
|
224
|
name: "WhoCrashed Automated Kernel Crash Dump Analyzer", |
|
225
|
developer: "Resplendence Software", |
|
226
|
category: "diagnostics", |
|
227
|
categoryLabel: "Automated BSOD Analysis", |
|
228
|
description: "One-click readable diagnostic reports explaining cryptic BSOD stop codes with plain-English suggestions for faulty drivers or memory.", |
|
229
|
fileSize: "3.5 MB", |
|
230
|
version: "v3.01 Home Edition", |
|
231
|
license: "Free", |
|
232
|
url: "https://www.resplendence.com/whocrashed", |
|
233
|
directDownloadUrl: "https://www.resplendence.com/whocrashed", |
|
234
|
platforms: ["Windows 11 / 10 / 8"], |
|
235
|
recommendedUse: "Quickly communicating crash causes and recommended driver updates to non-technical customers.", |
|
236
|
icon: Activity, |
|
237
|
}, |
|
238
|
{ |
|
239
|
id: "coretemp", |
|
240
|
name: "Core Temp Per-Core CPU Thermals & Power Monitor", |
|
241
|
developer: "Arthur Liberman", |
|
242
|
category: "diagnostics", |
|
243
|
categoryLabel: "Per-Core Thermal Telemetry", |
|
244
|
description: "Direct Digital Thermal Sensor (DTS) reader displaying real-time temperatures for every individual CPU core along with TjMax distance.", |
|
245
|
fileSize: "1.2 MB", |
|
246
|
version: "v1.18.1", |
|
247
|
license: "Free", |
|
248
|
url: "https://www.alcpu.com/CoreTemp/", |
|
249
|
directDownloadUrl: "https://www.alcpu.com/CoreTemp/", |
|
250
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
251
|
recommendedUse: "Spotting uneven heatsink mounting pressure where one core runs 15°C hotter than adjacent cores.", |
|
252
|
icon: Thermometer, |
|
253
|
}, |
|
254
|
{ |
|
255
|
id: "batteryinfoview", |
|
256
|
name: "BatteryInfoView Laptop Battery Degradation Telemetry", |
|
257
|
developer: "NirSoft", |
|
258
|
category: "diagnostics", |
|
259
|
categoryLabel: "Battery Health & Wear", |
|
260
|
description: "Reads laptop battery internal smart registers: designed capacity, full charge capacity, charge rate (mW), cycle count, and wear percentage.", |
|
261
|
fileSize: "165 KB Portable", |
|
262
|
version: "v1.25", |
|
263
|
license: "Free", |
|
264
|
url: "https://www.nirsoft.net/utils/battery_information_view.html", |
|
265
|
directDownloadUrl: "https://www.nirsoft.net/utils/battery_information_view.html", |
|
266
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
267
|
recommendedUse: "Checking battery cycle degradation and verifying genuine cell capacity before battery replacement.", |
|
268
|
icon: BatteryCharging, |
|
269
|
}, |
|
270
|
{ |
|
271
|
id: "ipdt", |
|
272
|
name: "Intel Processor Diagnostic Tool (IPDT 64-bit)", |
|
273
|
developer: "Intel Corporation", |
|
274
|
category: "diagnostics", |
|
275
|
categoryLabel: "Intel CPU Validation", |
|
276
|
description: "Official Intel manufacturing diagnostic testing instruction sets, brand strings, floating point math, cache memory, and thermal stress.", |
|
277
|
fileSize: "22.5 MB", |
|
278
|
version: "v4.1.9", |
|
279
|
license: "Official Utility", |
|
280
|
url: "https://www.intel.com/content/www/us/en/download/15951/intel-processor-diagnostic-tool.html", |
|
281
|
directDownloadUrl: "https://www.intel.com/content/www/us/en/download/15951/intel-processor-diagnostic-tool.html", |
|
282
|
platforms: ["Windows 11 / 10 64-bit"], |
|
283
|
recommendedUse: "Verifying warranty RMA claims for defective Intel desktop and laptop CPUs.", |
|
284
|
icon: Cpu, |
|
285
|
}, |
|
286
|
{ |
|
287
|
id: "ryzenmaster", |
|
288
|
name: "AMD Ryzen Master Processor Telemetry & Tuning", |
|
289
|
developer: "AMD", |
|
290
|
category: "diagnostics", |
|
291
|
categoryLabel: "AMD Processor Telemetry", |
|
292
|
description: "Official AMD software for monitoring per-core clocks, SoC voltage, Infinity Fabric clock (FCLK), and Curve Optimizer per-core offsets.", |
|
293
|
fileSize: "185 MB", |
|
294
|
version: "v2.13.0", |
|
295
|
license: "Official Utility", |
|
296
|
url: "https://www.amd.com/en/technologies/ryzen-master", |
|
297
|
directDownloadUrl: "https://www.amd.com/en/technologies/ryzen-master", |
|
298
|
platforms: ["Windows 11 / 10 64-bit"], |
|
299
|
recommendedUse: "Diagnosing AM4/AM5 memory training issues and fine-tuning AMD CPU power limits.", |
|
300
|
icon: Cpu, |
|
301
|
}, |
|
302
|
|
|
303
|
// ========================================== |
|
304
|
// Storage & Disk Cloning Utilities (10) |
|
305
|
// ========================================== |
|
306
|
{ |
|
307
|
id: "crystaldiskinfo", |
|
308
|
name: "CrystalDiskInfo S.M.A.R.T. Drive Health Monitor", |
|
309
|
developer: "Hiyohiyo / Crystal Dew World", |
|
310
|
category: "storage", |
|
311
|
categoryLabel: "Disk Health & S.M.A.R.T.", |
|
312
|
description: "Real-time S.M.A.R.T. health scoring, 0E bad sector reallocation tracking, NVMe temperature alert thresholds, and total host writes calculation.", |
|
313
|
fileSize: "6.5 MB", |
|
314
|
version: "v9.3.2 Standard", |
|
315
|
license: "Open Source", |
|
316
|
url: "https://crystalmark.info/en/software/crystaldiskinfo/", |
|
317
|
directDownloadUrl: "https://crystalmark.info/en/software/crystaldiskinfo/", |
|
318
|
sha256: "9f8e7d6c5b4a39281701f2e3d4c5b6a7890123456789abcdef0123456789abcd", |
|
319
|
platforms: ["Windows 11 / 10"], |
|
320
|
recommendedUse: "Immediate triage to determine if drive degradation is causing system freezes, BSODs, or slow boots.", |
|
321
|
icon: HardDrive, |
|
322
|
featured: true, |
|
323
|
}, |
|
324
|
{ |
|
325
|
id: "crystaldiskmark", |
|
326
|
name: "CrystalDiskMark Storage Speed Benchmark", |
|
327
|
developer: "Crystal Dew World", |
|
328
|
category: "storage", |
|
329
|
categoryLabel: "Disk Throughput Benchmark", |
|
330
|
description: "Measures sequential and random 4K IOPS read/write throughput (Q8T1, Q32T1) with dedicated NVMe real-world testing profiles.", |
|
331
|
fileSize: "5.1 MB", |
|
332
|
version: "v8.0.5", |
|
333
|
license: "Open Source", |
|
334
|
url: "https://crystalmark.info/en/software/crystaldiskmark/", |
|
335
|
directDownloadUrl: "https://crystalmark.info/en/software/crystaldiskmark/", |
|
336
|
platforms: ["Windows 11 / 10"], |
|
337
|
recommendedUse: "Verifying newly installed PCIe Gen4/Gen5 SSDs achieve full rated speeds without thermal throttling.", |
|
338
|
icon: HardDrive, |
|
339
|
}, |
|
340
|
{ |
|
341
|
id: "clonezilla", |
|
342
|
name: "Clonezilla Live Bare-Metal Disk Cloning ISO", |
|
343
|
developer: "Steven Shiau / NCHC Lab", |
|
344
|
category: "storage", |
|
345
|
categoryLabel: "Bare-Metal Disk Cloning", |
|
346
|
description: "Sector-by-sector drive cloning and partition imaging via bootable Linux USB. Bypasses damaged Windows file systems to rescue user data.", |
|
347
|
fileSize: "410 MB ISO", |
|
348
|
version: "v3.1.2-22", |
|
349
|
license: "Open Source", |
|
350
|
url: "https://clonezilla.org/downloads.php", |
|
351
|
directDownloadUrl: "https://clonezilla.org/downloads.php", |
|
352
|
platforms: ["Bootable USB (All OS / UEFI / BIOS)"], |
|
353
|
recommendedUse: "Cloning failing HDDs or NVMe drives to fresh SSDs without booting into an infected or unstable OS.", |
|
354
|
icon: Disc, |
|
355
|
featured: true, |
|
356
|
}, |
|
357
|
{ |
|
358
|
id: "macrium-reflect", |
|
359
|
name: "Macrium Reflect Rescue Media & Drive Imager", |
|
360
|
developer: "Paramount Software UK", |
|
361
|
category: "storage", |
|
362
|
categoryLabel: "Live OS Partition Cloning", |
|
363
|
description: "Live hot-cloning of active Windows installations with automatic partition expansion and WinPE USB rescue environment creation.", |
|
364
|
fileSize: "180 MB", |
|
365
|
version: "v8.1 Free", |
|
366
|
license: "Freemium", |
|
367
|
url: "https://www.macrium.com/reflectfree", |
|
368
|
directDownloadUrl: "https://www.macrium.com/reflectfree", |
|
369
|
platforms: ["Windows 11 / 10"], |
|
370
|
recommendedUse: "Migrating active OS installs to larger M.2 NVMe drives while keeping user files and license intact.", |
|
371
|
icon: HardDrive, |
|
372
|
}, |
|
373
|
{ |
|
374
|
id: "victoria-ssd", |
|
375
|
name: "Victoria SSD/HDD Low-Level Surface Diagnostic", |
|
376
|
developer: "Sergey Kazansky", |
|
377
|
category: "storage", |
|
378
|
categoryLabel: "Surface Sector Repair", |
|
379
|
description: "Legendary technician low-level surface analyzer showing millisecond block response times, remap/refresh bad sector repairs, and raw controller commands.", |
|
380
|
fileSize: "4.8 MB Portable", |
|
381
|
version: "v5.37", |
|
382
|
license: "Free", |
|
383
|
url: "https://hdd.by/victoria/", |
|
384
|
directDownloadUrl: "https://hdd.by/victoria/", |
|
385
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
386
|
recommendedUse: "Isolating slow degradation blocks on SATA SSDs and HDDs before permanent unrecoverable failure.", |
|
387
|
icon: HardDrive, |
|
388
|
featured: true, |
|
389
|
}, |
|
390
|
{ |
|
391
|
id: "asssd", |
|
392
|
name: "AS SSD Benchmark Storage Testing Tool", |
|
393
|
developer: "Alexey Schepeljanski", |
|
394
|
category: "storage", |
|
395
|
categoryLabel: "4K Alignment & IOPS", |
|
396
|
description: "Checks 4K partition alignment (e.g. 1024K OK) and AHCI/NVMe storahci driver mode while testing 4K-64Thrd read/write access times.", |
|
397
|
fileSize: "1.8 MB", |
|
398
|
version: "v2.0.7316", |
|
399
|
license: "Free", |
|
400
|
url: "https://www.alex-is.de/PHP/fusion/downloads.php", |
|
401
|
directDownloadUrl: "https://www.alex-is.de/PHP/fusion/downloads.php", |
|
402
|
platforms: ["Windows 11 / 10"], |
|
403
|
recommendedUse: "Verifying 4K partition alignment after performing manual partition resizing or disk cloning.", |
|
404
|
icon: Gauge, |
|
405
|
}, |
|
406
|
{ |
|
407
|
id: "testdisk", |
|
408
|
name: "TestDisk & PhotoRec Partition Recovery Suite", |
|
409
|
developer: "CGSecurity / Christophe Grenier", |
|
410
|
category: "storage", |
|
411
|
categoryLabel: "Partition & File Carving", |
|
412
|
description: "Open-source deep partition table repair tool for recovering deleted partitions, fixing damaged MBR/GPT structures, and carving raw files from formatted drives.", |
|
413
|
fileSize: "32.5 MB", |
|
414
|
version: "v7.2", |
|
415
|
license: "Open Source", |
|
416
|
url: "https://www.cgsecurity.org/wiki/TestDisk_Download", |
|
417
|
directDownloadUrl: "https://www.cgsecurity.org/wiki/TestDisk_Download", |
|
418
|
platforms: ["Windows", "Linux", "macOS"], |
|
419
|
recommendedUse: "Restoring corrupted partition tables when a drive shows as unallocated RAW space in Disk Management.", |
|
420
|
icon: Wrench, |
|
421
|
featured: true, |
|
422
|
}, |
|
423
|
{ |
|
424
|
id: "treesize", |
|
425
|
name: "TreeSize Free Master File Table Disk Space Hunter", |
|
426
|
developer: "JAM Software", |
|
427
|
category: "storage", |
|
428
|
categoryLabel: "Storage Bloat Visualizer", |
|
429
|
description: "Scans Master File Tables (MFT) in seconds to pinpoint exact folders holding huge hidden temp files, Windows.old directories, or crash dump logs.", |
|
430
|
fileSize: "14.2 MB", |
|
431
|
version: "v4.7.3", |
|
432
|
license: "Free", |
|
433
|
url: "https://www.jam-software.com/treesize_free", |
|
434
|
directDownloadUrl: "https://www.jam-software.com/treesize_free", |
|
435
|
platforms: ["Windows 11 / 10 / 8"], |
|
436
|
recommendedUse: "Instantly freeing up 50GB+ of storage on nearly full customer SSDs during tune-ups.", |
|
437
|
icon: HardDrive, |
|
438
|
}, |
|
439
|
{ |
|
440
|
id: "sdcardformatter", |
|
441
|
name: "SD Card Formatter Official Flash Storage Restorer", |
|
442
|
developer: "SD Association / Tuxera", |
|
443
|
category: "storage", |
|
444
|
categoryLabel: "Flash Memory Restorer", |
|
445
|
description: "Compliant formatting utility that adheres strictly to SD/SDHC/SDXC specifications, rebuilding factory flash blocks and partition layouts.", |
|
446
|
fileSize: "7.4 MB", |
|
447
|
version: "v5.0.3", |
|
448
|
license: "Official Utility", |
|
449
|
url: "https://www.sdcard.org/downloads/formatter/", |
|
450
|
directDownloadUrl: "https://www.sdcard.org/downloads/formatter/", |
|
451
|
platforms: ["Windows 11 / 10", "macOS"], |
|
452
|
recommendedUse: "Fixing write-protected or unrecognized SD and microSD cards used in camera or boot setups.", |
|
453
|
icon: Disc, |
|
454
|
}, |
|
455
|
{ |
|
456
|
id: "hdtune", |
|
457
|
name: "HD Tune Pro Drive Diagnostic & Transfer Bench", |
|
458
|
developer: "EFD Software", |
|
459
|
category: "storage", |
|
460
|
categoryLabel: "Sector Scan & Transfer", |
|
461
|
description: "Fast surface error scanning, S.M.A.R.T. health logging, burst rate measurement, and folder usage statistical breakdowns.", |
|
462
|
fileSize: "2.3 MB", |
|
463
|
version: "v5.75", |
|
464
|
license: "Freemium", |
|
465
|
url: "https://www.hdtune.com/download.html", |
|
466
|
directDownloadUrl: "https://www.hdtune.com/download.html", |
|
467
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
468
|
recommendedUse: "Visual bad sector mapping and testing sustainable continuous sequential write cache size.", |
|
469
|
icon: HardDrive, |
|
470
|
}, |
|
471
|
|
|
472
|
// ========================================== |
|
473
|
// Memory & CPU Stress Testing (6) |
|
474
|
// ========================================== |
|
475
|
{ |
|
476
|
id: "memtest86", |
|
477
|
name: "PassMark MemTest86 Standalone UEFI Diagnostic", |
|
478
|
developer: "PassMark Software", |
|
479
|
category: "memory", |
|
480
|
categoryLabel: "Memory Fault Isolation", |
|
481
|
description: "Gold standard standalone memory diagnostic. Boots directly into UEFI to stress RAM across 13 rigorous multi-threaded bit-flip detection tests.", |
|
482
|
fileSize: "14.2 MB USB Image", |
|
483
|
version: "v10.7 UEFI", |
|
484
|
license: "Free", |
|
485
|
url: "https://www.memtest86.com/download.html", |
|
486
|
directDownloadUrl: "https://www.memtest86.com/download.html", |
|
487
|
sha256: "5d4c3b2a1e0f9876543210fedcba9876543210abcdef1234567890abcdef1234", |
|
488
|
platforms: ["Bootable USB (UEFI x64 / ARM64)"], |
|
489
|
recommendedUse: "Proving intermittent memory faults and isolating failing SODIMM sticks before replacing motherboards.", |
|
490
|
icon: Layers, |
|
491
|
featured: true, |
|
492
|
}, |
|
493
|
{ |
|
494
|
id: "memtest86plus", |
|
495
|
name: "MemTest86+ Open Source UEFI/BIOS RAM Diagnostic", |
|
496
|
developer: "Martin Whitaker & Samuel Demeulemeester", |
|
497
|
category: "memory", |
|
498
|
categoryLabel: "Open Source Memory Tester", |
|
499
|
description: "100% free open-source RAM tester with native support for DDR5, DDR4, ECC reporting, and modern AMD Zen/Intel Core memory controllers.", |
|
500
|
fileSize: "4.6 MB ISO / USB", |
|
501
|
version: "v7.00", |
|
502
|
license: "Open Source", |
|
503
|
url: "https://www.memtest.org/", |
|
504
|
directDownloadUrl: "https://www.memtest.org/", |
|
505
|
platforms: ["Bootable USB / ISO (UEFI / Legacy BIOS)"], |
|
506
|
recommendedUse: "Quick bootable memory triage on both legacy BIOS machines and brand-new DDR5 systems.", |
|
507
|
icon: Layers, |
|
508
|
}, |
|
509
|
{ |
|
510
|
id: "testmem5", |
|
511
|
name: "TestMem5 Extreme Memory Stability Profile (TM5)", |
|
512
|
developer: "Serj / Anta777", |
|
513
|
category: "memory", |
|
514
|
categoryLabel: "DDR5 Timing Validation", |
|
515
|
description: "Aggressive Windows-based memory stress testing using Anta777 Extreme configurations to quickly trigger timing errors.", |
|
516
|
fileSize: "2.1 MB", |
|
517
|
version: "v0.12 Anta777", |
|
518
|
license: "Free", |
|
519
|
url: "https://github.com/integralfx/MemTestHelper/blob/oc-guide/DDR4%20OC%20Guide.md#testmem5", |
|
520
|
directDownloadUrl: "https://github.com/integralfx/MemTestHelper", |
|
521
|
platforms: ["Windows 11 / 10"], |
|
522
|
recommendedUse: "Validating custom DDR5 XMP/EXPO timings and finding memory instability in under 15 minutes.", |
|
523
|
icon: Layers, |
|
524
|
}, |
|
525
|
{ |
|
526
|
id: "prime95", |
|
527
|
name: "Prime95 Small FFTs CPU/VRM Thermal Torture", |
|
528
|
developer: "GIMPS / George Woltman", |
|
529
|
category: "memory", |
|
530
|
categoryLabel: "CPU & VRM Torture Test", |
|
531
|
description: "Maximum heat generation stress test executing in-place Small FFTs to test CPU cooling capacity and VRM current delivery.", |
|
532
|
fileSize: "11.5 MB", |
|
533
|
version: "v30.19 build 20", |
|
534
|
license: "Free", |
|
535
|
url: "https://www.mersenne.org/download/", |
|
536
|
directDownloadUrl: "https://www.mersenne.org/download/", |
|
537
|
platforms: ["Windows 11 / 10", "Linux", "macOS"], |
|
538
|
recommendedUse: "Testing heatsink contact pressure and verifying that thermal throttling safeguards engage properly.", |
|
539
|
icon: Cpu, |
|
540
|
}, |
|
541
|
{ |
|
542
|
id: "quickcpu", |
|
543
|
name: "Quick CPU Frequency & Core Parking Optimizer", |
|
544
|
developer: "CoderBag", |
|
545
|
category: "memory", |
|
546
|
categoryLabel: "CPU Power & Core Governor", |
|
547
|
description: "Real-time governor to adjust CPU core parking percentage, Turbo Boost index, frequency scaling, and VRM power state profiles.", |
|
548
|
fileSize: "28.5 MB", |
|
549
|
version: "v4.9.4", |
|
550
|
license: "Free", |
|
551
|
url: "https://coderbag.com/product/quick-cpu", |
|
552
|
directDownloadUrl: "https://coderbag.com/product/quick-cpu", |
|
553
|
platforms: ["Windows 11 / 10 (64-bit)"], |
|
554
|
recommendedUse: "Unparking stuck low-power CPU cores on laptops experiencing micro-stuttering in Windows.", |
|
555
|
icon: Zap, |
|
556
|
}, |
|
557
|
{ |
|
558
|
id: "linpack", |
|
559
|
name: "Linpack Xtreme High-Intensity AVX Torture", |
|
560
|
developer: "David Huang", |
|
561
|
category: "memory", |
|
562
|
categoryLabel: "AVX Math Stress Test", |
|
563
|
description: "Brutal math solver algorithm leveraging AVX2 and AVX-512 instructions to force computational bit-flips and check VRM power droop.", |
|
564
|
fileSize: "14.8 MB", |
|
565
|
version: "v1.1.5", |
|
566
|
license: "Free", |
|
567
|
url: "https://www.techpowerup.com/download/linpack-xtreme/", |
|
568
|
directDownloadUrl: "https://www.techpowerup.com/download/linpack-xtreme/", |
|
569
|
platforms: ["Windows 11 / 10", "Linux"], |
|
570
|
recommendedUse: "Verifying absolute workstation and server computing stability after CPU/cooler replacements.", |
|
571
|
icon: Activity, |
|
572
|
}, |
|
573
|
|
|
574
|
// ========================================== |
|
575
|
// Bootable Media & OS Recovery Builders (6) |
|
576
|
// ========================================== |
|
577
|
{ |
|
578
|
id: "ventoy", |
|
579
|
name: "Ventoy Multi-Boot USB ISO Loader", |
|
580
|
developer: "longpanda", |
|
581
|
category: "bootable", |
|
582
|
categoryLabel: "Multi-ISO USB Builder", |
|
583
|
description: "Format once, copy multiple ISOs. Boot Windows, Linux, MemTest86, and Clonezilla directly from a single flash drive without reformatting.", |
|
584
|
fileSize: "16.8 MB", |
|
585
|
version: "v1.0.99", |
|
586
|
license: "Open Source", |
|
587
|
url: "https://www.ventoy.net/en/download.html", |
|
588
|
directDownloadUrl: "https://www.ventoy.net/en/download.html", |
|
589
|
sha256: "7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b", |
|
590
|
platforms: ["Windows 11 / 10 / 8", "Linux"], |
|
591
|
recommendedUse: "Creating the ultimate all-in-one technician USB containing all recovery ISOs on a single drive.", |
|
592
|
icon: Terminal, |
|
593
|
featured: true, |
|
594
|
}, |
|
595
|
{ |
|
596
|
id: "rufus", |
|
597
|
name: "Rufus Bootable USB & Windows 11 Bypass Creator", |
|
598
|
developer: "Pete Batard", |
|
599
|
category: "bootable", |
|
600
|
categoryLabel: "Fast Bootable USB Creator", |
|
601
|
description: "Lightweight utility to format and create bootable USB flash drives. Automatically bypasses Windows 11 TPM, Secure Boot, and Microsoft Account requirements.", |
|
602
|
fileSize: "1.7 MB", |
|
603
|
version: "v4.5 Standalone", |
|
604
|
license: "Open Source", |
|
605
|
url: "https://rufus.ie/en/", |
|
606
|
directDownloadUrl: "https://rufus.ie/en/", |
|
607
|
sha256: "2f4e6d8c0b2a4e6f8a0c2e4b6d8f0a2c4e6b8d0f2a4c6e8b0d2f4a6c8e0b2d4f", |
|
608
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
609
|
recommendedUse: "Creating clean Windows 11 installation drives on older unsupported laptop/desktop hardware.", |
|
610
|
icon: Terminal, |
|
611
|
featured: true, |
|
612
|
}, |
|
613
|
{ |
|
614
|
id: "hirensbootcd", |
|
615
|
name: "Hiren's BootCD PE x64 Emergency Rescue Environment", |
|
616
|
developer: "HBCDP Team", |
|
617
|
category: "bootable", |
|
618
|
categoryLabel: "WinPE Emergency OS", |
|
619
|
description: "Windows 11 PE pre-installed emergency rescue environment with over 100 diagnostic utilities, password reset tools, and hardware drivers.", |
|
620
|
fileSize: "3.1 GB ISO", |
|
621
|
version: "v1.0.8 PE x64", |
|
622
|
license: "Free", |
|
623
|
url: "https://www.hirensbootcd.org/download/", |
|
624
|
directDownloadUrl: "https://www.hirensbootcd.org/download/", |
|
625
|
platforms: ["Bootable USB (UEFI x64)"], |
|
626
|
recommendedUse: "Rescuing unbootable systems, resetting forgotten local Windows passwords, and testing offline hardware.", |
|
627
|
icon: Disc, |
|
628
|
featured: true, |
|
629
|
}, |
|
630
|
{ |
|
631
|
id: "balenaetcher", |
|
632
|
name: "BalenaEtcher Safe ISO & Image Flasher", |
|
633
|
developer: "Balena", |
|
634
|
category: "bootable", |
|
635
|
categoryLabel: "Validated Image Flashing", |
|
636
|
description: "Safe, visual image flasher with automatic drive selection validation that prevents accidental formatting of primary hard drives.", |
|
637
|
fileSize: "148 MB", |
|
638
|
version: "v1.18.11", |
|
639
|
license: "Open Source", |
|
640
|
url: "https://etcher.balena.io/", |
|
641
|
directDownloadUrl: "https://etcher.balena.io/", |
|
642
|
platforms: ["Windows 11 / 10", "macOS", "Linux"], |
|
643
|
recommendedUse: "Writing Linux, Raspberry Pi OS, or custom recovery images safely without risk to main system drives.", |
|
644
|
icon: Disc, |
|
645
|
}, |
|
646
|
{ |
|
647
|
id: "systemrescue", |
|
648
|
name: "SystemRescue Bootable Linux Admin & Recovery CD", |
|
649
|
developer: "SystemRescue Team", |
|
650
|
category: "bootable", |
|
651
|
categoryLabel: "Linux Rescue Environment", |
|
652
|
description: "Arch Linux-based toolkit featuring GParted, ddrescue, sfdisk, TestDisk, rsync, and fsck file system repair utilities.", |
|
653
|
fileSize: "840 MB ISO", |
|
654
|
version: "v11.01", |
|
655
|
license: "Open Source", |
|
656
|
url: "https://www.system-rescue.org/Download/", |
|
657
|
directDownloadUrl: "https://www.system-rescue.org/Download/", |
|
658
|
platforms: ["Bootable USB / CD (x86_64)"], |
|
659
|
recommendedUse: "Repairing corrupted Linux bootloaders, resizing active partitions, and creating raw ddrescue drive images.", |
|
660
|
icon: Terminal, |
|
661
|
}, |
|
662
|
{ |
|
663
|
id: "unetbootin", |
|
664
|
name: "UNetbootin Cross-Platform Live USB Creator", |
|
665
|
developer: "Geza Kovacs", |
|
666
|
category: "bootable", |
|
667
|
categoryLabel: "Live USB Distribution Builder", |
|
668
|
description: "Creates bootable Live USB drives for Ubuntu, Fedora, Debian, and other Linux distributions automatically downloading ISO files on demand.", |
|
669
|
fileSize: "4.8 MB", |
|
670
|
version: "v702", |
|
671
|
license: "Open Source", |
|
672
|
url: "https://unetbootin.github.io/", |
|
673
|
directDownloadUrl: "https://unetbootin.github.io/", |
|
674
|
platforms: ["Windows 11 / 10", "macOS", "Linux"], |
|
675
|
recommendedUse: "Quickly preparing Linux test environments on customer laptops to verify non-Windows hardware functionality.", |
|
676
|
icon: Terminal, |
|
677
|
}, |
|
678
|
|
|
679
|
// ========================================== |
|
680
|
// Driver Cleaners & OS Repair (6) |
|
681
|
// ========================================== |
|
682
|
{ |
|
683
|
id: "ddu", |
|
684
|
name: "Display Driver Uninstaller (DDU) Deep Clean Tool", |
|
685
|
developer: "Wagnardsoft", |
|
686
|
category: "drivers", |
|
687
|
categoryLabel: "Driver Registry Purge", |
|
688
|
description: "Removes AMD, NVIDIA, and Intel graphics/audio drivers down to registry keys, leftover files, and DriverStore packages to fix black screens and GPU crashes.", |
|
689
|
fileSize: "1.4 MB Portable", |
|
690
|
version: "v18.0.7.6", |
|
691
|
license: "Free", |
|
692
|
url: "https://www.wagnardsoft.com/display-driver-uninstaller-ddu-", |
|
693
|
directDownloadUrl: "https://www.wagnardsoft.com/display-driver-uninstaller-ddu-", |
|
694
|
sha256: "4b6d8e0f2a4c6e8b0d2f4a6c8e0b2d4f6a8c0e2b4d6f8a0c2e4b6d8f0a2c4e6b", |
|
695
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
696
|
recommendedUse: "Always run in Safe Mode before replacing a graphics card or solving stubborn video driver BSODs.", |
|
697
|
icon: FileCode, |
|
698
|
featured: true, |
|
699
|
}, |
|
700
|
{ |
|
701
|
id: "bcuninstaller", |
|
702
|
name: "Bulk Crap Uninstaller (BCUninstaller)", |
|
703
|
developer: "Marcin Szeniak", |
|
704
|
category: "drivers", |
|
705
|
categoryLabel: "Bloatware & Leftovers Purge", |
|
706
|
description: "Fast batch uninstaller that removes OEM bloatware, hidden telemetry software, and orphaned registry entries without user interaction.", |
|
707
|
fileSize: "18.5 MB", |
|
708
|
version: "v5.8.1", |
|
709
|
license: "Open Source", |
|
710
|
url: "https://www.bcuninstaller.com/", |
|
711
|
directDownloadUrl: "https://www.bcuninstaller.com/", |
|
712
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
713
|
recommendedUse: "Cleaning bloated OEM pre-installs on newly repaired customer machines in batch.", |
|
714
|
icon: FileCode, |
|
715
|
featured: true, |
|
716
|
}, |
|
717
|
{ |
|
718
|
id: "sdio", |
|
719
|
name: "Snappy Driver Installer Origin (SDIO Offline)", |
|
720
|
developer: "Glenn Delahoy", |
|
721
|
category: "drivers", |
|
722
|
categoryLabel: "Offline Driver Installer", |
|
723
|
description: "Clean, ad-free open-source driver installer with offline database matching exact hardware device IDs and INF driver packages.", |
|
724
|
fileSize: "5.2 MB (Tool) / Offline Pack", |
|
725
|
version: "v1.12.11", |
|
726
|
license: "Open Source", |
|
727
|
url: "https://www.glenn.delahoy.com/snappy-driver-installer-origin/", |
|
728
|
directDownloadUrl: "https://www.glenn.delahoy.com/snappy-driver-installer-origin/", |
|
729
|
platforms: ["Windows 11 / 10 / 8 / 7 (32/64-bit)"], |
|
730
|
recommendedUse: "Installing missing Ethernet, Wi-Fi, and chipset drivers on fresh Windows installs without an internet connection.", |
|
731
|
icon: Wrench, |
|
732
|
featured: true, |
|
733
|
}, |
|
734
|
{ |
|
735
|
id: "revouninstaller", |
|
736
|
name: "Revo Uninstaller Free Deep Registry Cleaner", |
|
737
|
developer: "VS Revo Group", |
|
738
|
category: "drivers", |
|
739
|
categoryLabel: "Forced Uninstall & Leftover Hunter", |
|
740
|
description: "Monitors standard uninstallers and scans the Windows Registry and file system for leftover files and corrupted installation keys.", |
|
741
|
fileSize: "16.2 MB", |
|
742
|
version: "v2.4.8", |
|
743
|
license: "Freemium", |
|
744
|
url: "https://www.revouninstaller.com/products/revo-uninstaller-free/", |
|
745
|
directDownloadUrl: "https://www.revouninstaller.com/products/revo-uninstaller-free/", |
|
746
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
747
|
recommendedUse: "Completely eliminating anti-virus residue and broken software suites that fail normal uninstallation.", |
|
748
|
icon: FileCode, |
|
749
|
}, |
|
750
|
{ |
|
751
|
id: "geekuninstaller", |
|
752
|
name: "Geek Uninstaller Fast Force Removal Tool", |
|
753
|
developer: "Thomas Koen", |
|
754
|
category: "drivers", |
|
755
|
categoryLabel: "Lightweight Force Removal", |
|
756
|
description: "Compact single-binary executable with native 64-bit support and Forced Removal mode to nuke stubborn, corrupted applications.", |
|
757
|
fileSize: "2.8 MB Standalone", |
|
758
|
version: "v1.5.2", |
|
759
|
license: "Free", |
|
760
|
url: "https://geekuninstaller.com/", |
|
761
|
directDownloadUrl: "https://geekuninstaller.com/", |
|
762
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
763
|
recommendedUse: "Carrying in a portable technician USB toolkit for instant application cleanup without installation.", |
|
764
|
icon: Zap, |
|
765
|
}, |
|
766
|
{ |
|
767
|
id: "driverstoreexplorer", |
|
768
|
name: "Driver Store Explorer (RAPR) Driver Purge", |
|
769
|
developer: "lostindark", |
|
770
|
category: "drivers", |
|
771
|
categoryLabel: "DriverStore Cleanup", |
|
772
|
description: "Enumerates, audits, and force-deletes obsolete, duplicate staging driver packages (.inf) from the system DriverStore repository.", |
|
773
|
fileSize: "1.5 MB Portable", |
|
774
|
version: "v0.11.92", |
|
775
|
license: "Open Source", |
|
776
|
url: "https://github.com/lostindark/DriverStoreExplorer/releases", |
|
777
|
directDownloadUrl: "https://github.com/lostindark/DriverStoreExplorer/releases", |
|
778
|
platforms: ["Windows 11 / 10"], |
|
779
|
recommendedUse: "Recovering 10GB+ of drive space and removing conflicting legacy graphics/printer drivers.", |
|
780
|
icon: HardDrive, |
|
781
|
}, |
|
782
|
|
|
783
|
// ========================================== |
|
784
|
// Thermals, Fan Control & Power (5) |
|
785
|
// ========================================== |
|
786
|
{ |
|
787
|
id: "fancontrol", |
|
788
|
name: "Fan Control (Rem0o) Custom Curve Utility", |
|
789
|
developer: "Rem0o", |
|
790
|
category: "thermals", |
|
791
|
categoryLabel: "Thermal & Fan Curve Tuning", |
|
792
|
description: "Highly customizable fan control software combining CPU, GPU, motherboard, and NVMe temperatures into mixed custom response curves.", |
|
793
|
fileSize: "6.9 MB", |
|
794
|
version: "V188 Portable", |
|
795
|
license: "Free", |
|
796
|
url: "https://getfancontrol.com/", |
|
797
|
directDownloadUrl: "https://getfancontrol.com/", |
|
798
|
platforms: ["Windows 11 / 10"], |
|
799
|
recommendedUse: "Silencing noisy laptop/desktop fans and setting aggressive ramp-up profiles for gaming rigs.", |
|
800
|
icon: Thermometer, |
|
801
|
featured: true, |
|
802
|
}, |
|
803
|
{ |
|
804
|
id: "throttlestop", |
|
805
|
name: "ThrottleStop Intel CPU Undervolting & Power Limit Editor", |
|
806
|
developer: "Kevin Glynn (Unclewebb)", |
|
807
|
category: "thermals", |
|
808
|
categoryLabel: "CPU Power & Thermal Tuning", |
|
809
|
description: "Overrides aggressive OEM thermal throttling limits (BD PROCHOT), adjusts PL1/PL2 power limits, and undervolts compatible Intel CPUs.", |
|
810
|
fileSize: "2.4 MB", |
|
811
|
version: "v9.6", |
|
812
|
license: "Free", |
|
813
|
url: "https://www.techpowerup.com/download/techpowerup-throttlestop/", |
|
814
|
directDownloadUrl: "https://www.techpowerup.com/download/techpowerup-throttlestop/", |
|
815
|
platforms: ["Windows 11 / 10"], |
|
816
|
recommendedUse: "Disabling stuck BD PROCHOT sensor flags on laptops running at locked 0.79 GHz frequencies.", |
|
817
|
icon: Zap, |
|
818
|
featured: true, |
|
819
|
}, |
|
820
|
{ |
|
821
|
id: "msiafterburner", |
|
822
|
name: "MSI Afterburner & RivaTuner (RTSS) GPU Suite", |
|
823
|
developer: "MSI / Guru3D (Alexey Nicolaychuk)", |
|
824
|
category: "thermals", |
|
825
|
categoryLabel: "GPU Voltage & Fan Curve", |
|
826
|
description: "World's most recognized graphics card utility. Custom V/F curve voltage tuning, power target adjustments, and in-game RTSS telemetry overlay.", |
|
827
|
fileSize: "52.8 MB", |
|
828
|
version: "v4.6.5 Final", |
|
829
|
license: "Free", |
|
830
|
url: "https://www.msi.com/Landing/afterburner/graphics-cards", |
|
831
|
directDownloadUrl: "https://www.msi.com/Landing/afterburner/graphics-cards", |
|
832
|
platforms: ["Windows 11 / 10 (64-bit)"], |
|
833
|
recommendedUse: "Undervolting hot laptop GPUs to drop temperatures by 10-15°C without performance loss.", |
|
834
|
icon: Gauge, |
|
835
|
featured: true, |
|
836
|
}, |
|
837
|
{ |
|
838
|
id: "hwmonitor", |
|
839
|
name: "CPUID HWMonitor Sensor Telemetry", |
|
840
|
developer: "CPUID", |
|
841
|
category: "thermals", |
|
842
|
categoryLabel: "Real-time Voltage & Thermals", |
|
843
|
description: "Lightweight hardware monitor reading PC systems main health sensors: voltages, temperatures, power consumption, and fan speeds (min/max).", |
|
844
|
fileSize: "1.9 MB", |
|
845
|
version: "v1.53", |
|
846
|
license: "Free", |
|
847
|
url: "https://www.cpuid.com/softwares/hwmonitor.html", |
|
848
|
directDownloadUrl: "https://www.cpuid.com/softwares/hwmonitor.html", |
|
849
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
850
|
recommendedUse: "Quick sanity check on CPU/GPU thermal ceilings and chassis fan tachometer RPMs.", |
|
851
|
icon: Thermometer, |
|
852
|
}, |
|
853
|
{ |
|
854
|
id: "gputweak3", |
|
855
|
name: "ASUS GPU Tweak III Tuning Suite", |
|
856
|
developer: "ASUS ROG", |
|
857
|
category: "thermals", |
|
858
|
categoryLabel: "ASUS GPU Thermal Control", |
|
859
|
description: "Thermal target governor, 0dB fan threshold management, and profile automation based on foreground application launch.", |
|
860
|
fileSize: "98.5 MB", |
|
861
|
version: "v1.7.5.0", |
|
862
|
license: "Official Utility", |
|
863
|
url: "https://www.asus.com/campaign/GPU-Tweak-III/", |
|
864
|
directDownloadUrl: "https://www.asus.com/campaign/GPU-Tweak-III/", |
|
865
|
platforms: ["Windows 11 / 10 64-bit"], |
|
866
|
recommendedUse: "Managing thermal targets and RGB synchronization on ASUS ROG / TUF graphics cards.", |
|
867
|
icon: Gauge, |
|
868
|
}, |
|
869
|
|
|
870
|
// ========================================== |
|
871
|
// System Internals, Network & Security (7) |
|
872
|
// ========================================== |
|
873
|
{ |
|
874
|
id: "sysinternals-autoruns", |
|
875
|
name: "Sysinternals Autoruns Startup & Hook Auditor", |
|
876
|
developer: "Microsoft Sysinternals (Mark Russinovich)", |
|
877
|
category: "internals", |
|
878
|
categoryLabel: "Startup & Kernel Hook Audit", |
|
879
|
description: "Most comprehensive startup monitor showing every executable configured to run during system boot, login, Explorer shell extensions, and browser helper objects.", |
|
880
|
fileSize: "3.7 MB Portable", |
|
881
|
version: "v14.11", |
|
882
|
license: "Official Utility", |
|
883
|
url: "https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns", |
|
884
|
directDownloadUrl: "https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns", |
|
885
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
886
|
recommendedUse: "Hunting down persistent malware, adware registry keys, and lingering startup errors.", |
|
887
|
icon: ShieldCheck, |
|
888
|
featured: true, |
|
889
|
}, |
|
890
|
{ |
|
891
|
id: "sysinternals-procexp", |
|
892
|
name: "Sysinternals Process Explorer Advanced Task Manager", |
|
893
|
developer: "Microsoft Sysinternals", |
|
894
|
category: "internals", |
|
895
|
categoryLabel: "Process & Handle Inspector", |
|
896
|
description: "Advanced Task Manager alternative showing loaded DLLs, open file handles, GPU memory allocation, and integrated VirusTotal hash checking.", |
|
897
|
fileSize: "5.2 MB Portable", |
|
898
|
version: "v17.06", |
|
899
|
license: "Official Utility", |
|
900
|
url: "https://learn.microsoft.com/en-us/sysinternals/downloads/process-explorer", |
|
901
|
directDownloadUrl: "https://learn.microsoft.com/en-us/sysinternals/downloads/process-explorer", |
|
902
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
903
|
recommendedUse: "Unlocking files that are held open by locked processes and identifying high-CPU background threads.", |
|
904
|
icon: Activity, |
|
905
|
featured: true, |
|
906
|
}, |
|
907
|
{ |
|
908
|
id: "sysinternals-tcpview", |
|
909
|
name: "Sysinternals TCPView Active Network Socket Monitor", |
|
910
|
developer: "Microsoft Sysinternals", |
|
911
|
category: "internals", |
|
912
|
categoryLabel: "Network Socket Monitor", |
|
913
|
description: "Real-time list of all TCP and UDP endpoints on the system, resolving remote IP addresses to domain names and showing transmitted packet counts.", |
|
914
|
fileSize: "1.8 MB", |
|
915
|
version: "v4.19", |
|
916
|
license: "Official Utility", |
|
917
|
url: "https://learn.microsoft.com/en-us/sysinternals/downloads/tcpview", |
|
918
|
directDownloadUrl: "https://learn.microsoft.com/en-us/sysinternals/downloads/tcpview", |
|
919
|
platforms: ["Windows 11 / 10 / 8 / 7"], |
|
920
|
recommendedUse: "Tracking down rogue applications or suspicious network connections sending traffic in the background.", |
|
921
|
icon: Network, |
|
922
|
}, |
|
923
|
{ |
|
924
|
id: "wireshark", |
|
925
|
name: "Wireshark Network Protocol & Packet Analyzer", |
|
926
|
developer: "Wireshark Foundation", |
|
927
|
category: "internals", |
|
928
|
categoryLabel: "Packet Capture & Protocol Inspection", |
|
929
|
description: "The world's foremost network packet analyzer. Captures live traffic to troubleshoot DHCP failures, DNS timeouts, and Ethernet link negotiation drops.", |
|
930
|
fileSize: "82.4 MB", |
|
931
|
version: "v4.2.4", |
|
932
|
license: "Open Source", |
|
933
|
url: "https://www.wireshark.org/download.html", |
|
934
|
directDownloadUrl: "https://www.wireshark.org/download.html", |
|
935
|
platforms: ["Windows 11 / 10", "macOS", "Linux"], |
|
936
|
recommendedUse: "Diagnosing intermittent LAN drops and validating DHCP server handshakes on repaired NICs.", |
|
937
|
icon: Radio, |
|
938
|
featured: true, |
|
939
|
}, |
|
940
|
{ |
|
941
|
id: "angryip", |
|
942
|
name: "Angry IP Scanner Multithreaded LAN Scanner", |
|
943
|
developer: "Anton Keks", |
|
944
|
category: "internals", |
|
945
|
categoryLabel: "Fast Network IP Scanner", |
|
946
|
description: "Ultra-fast multithreaded IP address and port scanner. Finds active devices, NetBIOS info, MAC addresses, and open ports on local subnets.", |
|
947
|
fileSize: "4.1 MB", |
|
948
|
version: "v3.9.1", |
|
949
|
license: "Open Source", |
|
950
|
url: "https://angryip.org/download/", |
|
951
|
directDownloadUrl: "https://angryip.org/download/", |
|
952
|
platforms: ["Windows", "macOS", "Linux"], |
|
953
|
recommendedUse: "Locating network printers, NAS storage, and router management gateways on the bench.", |
|
954
|
icon: Network, |
|
955
|
}, |
|
956
|
{ |
|
957
|
id: "putty", |
|
958
|
name: "PuTTY SSH, Telnet & Serial COM Console", |
|
959
|
developer: "Simon Tatham", |
|
960
|
category: "internals", |
|
961
|
categoryLabel: "Serial COM Port Console", |
|
962
|
description: "Versatile terminal emulator for connecting to serial COM ports on routers, switches, and motherboard UART debugging interfaces.", |
|
963
|
fileSize: "3.5 MB", |
|
964
|
version: "v0.81", |
|
965
|
license: "Open Source", |
|
966
|
url: "https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html", |
|
967
|
directDownloadUrl: "https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html", |
|
968
|
platforms: ["Windows 11 / 10 / 8", "Linux"], |
|
969
|
recommendedUse: "Accessing serial console logs during BIOS/UEFI recovery and network switch setup.", |
|
970
|
icon: Terminal, |
|
971
|
}, |
|
972
|
{ |
|
973
|
id: "sevenzip", |
|
974
|
name: "7-Zip High Compression Archive Extractor", |
|
975
|
developer: "Igor Pavlov", |
|
976
|
category: "internals", |
|
977
|
categoryLabel: "Archive & Firmware Extraction", |
|
978
|
description: "Essential compression tool supporting 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM, ISO, and RAR unpacks with high compression LZMA2 algorithms.", |
|
979
|
fileSize: "1.6 MB", |
|
980
|
version: "v24.05", |
|
981
|
license: "Open Source", |
|
982
|
url: "https://www.7-zip.org/download.html", |
|
983
|
directDownloadUrl: "https://www.7-zip.org/download.html", |
|
984
|
platforms: ["Windows 11 / 10 / 8 / 7 (32/64-bit/ARM64)"], |
|
985
|
recommendedUse: "Extracting OEM BIOS update executables (.exe) to isolate raw .bin / .cap ROM files for programmer flashing.", |
|
986
|
icon: FileArchive, |
|
987
|
featured: true, |
|
988
|
} |
|
989
|
]; |
|
990
|
|
|
991
|
export default function TechnicianDownloadHub() { |
|
992
|
const { toast } = useToast(); |
|
993
|
const [searchQuery, setSearchQuery] = useState(""); |
|
994
|
const [selectedTab, setSelectedTab] = useState("all"); |
|
995
|
const [copiedId, setCopiedId] = useState<string | null>(null); |
|
996
|
|
|
997
|
// Memoize category tab counts in a single fast pass O(N) |
|
998
|
const categoryCounts = useMemo(() => { |
|
999
|
const counts: Record<string, number> = { |
|
1000
|
all: ALL_DOWNLOADS.length, |
|
1001
|
bundles: 0, |
|
1002
|
diagnostics: 0, |
|
1003
|
storage: 0, |
|
1004
|
memory: 0, |
|
1005
|
bootable: 0, |
|
1006
|
drivers: 0, |
|
1007
|
thermals: 0, |
|
1008
|
internals: 0, |
|
1009
|
}; |
|
1010
|
for (let i = 0; i < ALL_DOWNLOADS.length; i++) { |
|
1011
|
const cat = ALL_DOWNLOADS[i].category; |
|
1012
|
if (counts[cat] !== undefined) { |
|
1013
|
counts[cat]++; |
|
1014
|
} |
|
1015
|
} |
|
1016
|
return counts; |
|
1017
|
}, []); |
|
1018
|
|
|
1019
|
const categoryTabs = useMemo(() => [ |
|
1020
|
{ id: "all", label: "All Downloads", icon: ArrowDownToLine, count: categoryCounts.all }, |
|
1021
|
{ id: "bundles", label: "Offline Packs", icon: FileArchive, count: categoryCounts.bundles }, |
|
1022
|
{ id: "diagnostics", label: "Diagnostics", icon: Cpu, count: categoryCounts.diagnostics }, |
|
1023
|
{ id: "storage", label: "Storage & Clone", icon: HardDrive, count: categoryCounts.storage }, |
|
1024
|
{ id: "memory", label: "Memory & Stress", icon: Layers, count: categoryCounts.memory }, |
|
1025
|
{ id: "bootable", label: "Bootable ISOs", icon: Terminal, count: categoryCounts.bootable }, |
|
1026
|
{ id: "drivers", label: "Driver Cleaners", icon: FileCode, count: categoryCounts.drivers }, |
|
1027
|
{ id: "thermals", label: "Thermal Control", icon: Thermometer, count: categoryCounts.thermals }, |
|
1028
|
{ id: "internals", label: "System Internals & Net", icon: Network, count: categoryCounts.internals }, |
|
1029
|
], [categoryCounts]); |
|
1030
|
|
|
1031
|
// Memoize filtered downloads for rapid search response |
|
1032
|
const filteredDownloads = useMemo(() => { |
|
1033
|
const q = searchQuery.trim().toLowerCase(); |
|
1034
|
return ALL_DOWNLOADS.filter((item) => { |
|
1035
|
const matchesTab = selectedTab === "all" || item.category === selectedTab; |
|
1036
|
if (!matchesTab) return false; |
|
1037
|
if (!q) return true; |
|
1038
|
|
|
1039
|
return ( |
|
1040
|
item.name.toLowerCase().includes(q) || |
|
1041
|
item.developer.toLowerCase().includes(q) || |
|
1042
|
item.description.toLowerCase().includes(q) || |
|
1043
|
item.recommendedUse.toLowerCase().includes(q) || |
|
1044
|
item.categoryLabel.toLowerCase().includes(q) |
|
1045
|
); |
|
1046
|
}); |
|
1047
|
}, [searchQuery, selectedTab]); |
|
1048
|
|
|
1049
|
const handleDownload = (item: DownloadItem) => { |
|
1050
|
if (item.url.startsWith("#")) { |
|
1051
|
toast({ |
|
1052
|
title: `Preparing ${item.name}`, |
|
1053
|
description: `Generating offline package (${item.fileSize}). Check your downloads folder.`, |
|
1054
|
}); |
|
1055
|
} else { |
|
1056
|
window.open(item.url, "_blank", "noopener,noreferrer"); |
|
1057
|
toast({ |
|
1058
|
title: `Opening Official Download`, |
|
1059
|
description: `Connecting to ${item.developer} secure distribution mirror.`, |
|
1060
|
}); |
|
1061
|
} |
|
1062
|
}; |
|
1063
|
|
|
1064
|
const handleCopyHash = (item: DownloadItem) => { |
|
1065
|
if (!item.sha256) return; |
|
1066
|
navigator.clipboard.writeText(item.sha256); |
|
1067
|
setCopiedId(item.id); |
|
1068
|
toast({ |
|
1069
|
title: "SHA-256 Checksum Copied", |
|
1070
|
description: `Hash for ${item.name} copied to clipboard for verification.`, |
|
1071
|
}); |
|
1072
|
setTimeout(() => setCopiedId(null), 2000); |
|
1073
|
}; |
|
1074
|
|
|
1075
|
return ( |
|
1076
|
<section |
|
1077
|
id="technician-downloads-hub" |
|
1078
|
className="rounded-3xl border border-emerald-500/30 bg-gradient-to-br from-card/90 via-card/70 to-emerald-500/5 backdrop-blur-xl p-6 sm:p-8 space-y-8 shadow-sm relative overflow-hidden" |
|
1079
|
> |
|
1080
|
{/* Background Accent Glow */} |
|
1081
|
<div className="absolute top-0 right-0 w-96 h-96 bg-gradient-to-bl from-emerald-500/15 via-teal-500/10 to-transparent rounded-full blur-3xl opacity-40 pointer-events-none -z-0" /> |
|
1082
|
|
|
1083
|
{/* Section Header */} |
|
1084
|
<div className="relative z-10 flex flex-col md:flex-row md:items-center justify-between gap-4 border-b border-border/40 pb-6"> |
|
1085
|
<div className="flex items-start gap-4"> |
|
1086
|
<div className="h-14 w-14 rounded-2xl bg-emerald-500/10 text-emerald-600 dark:text-emerald-400 border border-emerald-500/20 flex items-center justify-center shrink-0 shadow-xs"> |
|
1087
|
<Binary className="h-7 w-7" /> |
|
1088
|
</div> |
|
1089
|
<div> |
|
1090
|
<div className="flex flex-wrap items-center gap-2 mb-1"> |
|
1091
|
<h2 className="text-xl sm:text-2xl font-black tracking-tight text-foreground"> |
|
1092
|
Technician Software & Utility Hub |
|
1093
|
</h2> |
|
1094
|
<Badge className="bg-emerald-500/15 text-emerald-600 dark:text-emerald-400 border-emerald-500/30 text-[11px] font-bold px-2 py-0.5"> |
|
1095
|
{ALL_DOWNLOADS.length} Verified Bench Utilities |
|
1096
|
</Badge> |
|
1097
|
</div> |
|
1098
|
<p className="text-xs sm:text-sm text-muted-foreground max-w-2xl leading-relaxed"> |
|
1099
|
Curated, battle-tested software repository for bench diagnostics, memory fault isolation, drive cloning, firmware recovery, and thermals. |
|
1100
|
</p> |
|
1101
|
</div> |
|
1102
|
</div> |
|
1103
|
|
|
1104
|
{/* Quick Offline Actions */} |
|
1105
|
<div className="flex items-center gap-2 shrink-0"> |
|
1106
|
<Button |
|
1107
|
onClick={() => handleDownload(ALL_DOWNLOADS[0])} |
|
1108
|
className="bg-emerald-600 hover:bg-emerald-700 text-white font-bold text-xs h-10 px-4 rounded-xl shadow-xs gap-2 transition-all cursor-pointer" |
|
1109
|
> |
|
1110
|
<FolderDown className="h-4 w-4" /> |
|
1111
|
<span>Download Master Offline ZIP</span> |
|
1112
|
</Button> |
|
1113
|
</div> |
|
1114
|
</div> |
|
1115
|
|
|
1116
|
{/* Filter & Search Bar */} |
|
1117
|
<div className="relative z-10 space-y-4"> |
|
1118
|
<div className="flex flex-col sm:flex-row items-center justify-between gap-3"> |
|
1119
|
<div className="relative flex-1 w-full"> |
|
1120
|
<Search className="absolute left-3.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground" /> |
|
1121
|
<Input |
|
1122
|
type="text" |
|
1123
|
placeholder="Search software by name, developer, use-case (e.g., 'BSOD', 'NVMe', 'DDR5', 'fan curve')..." |
|
1124
|
value={searchQuery} |
|
1125
|
onChange={(e) => setSearchQuery(e.target.value)} |
|
1126
|
className="pl-10 h-11 bg-background/80 border-border/60 rounded-xl text-sm font-medium focus-visible:ring-emerald-500/30" |
|
1127
|
/> |
|
1128
|
{searchQuery && ( |
|
1129
|
<button |
|
1130
|
type="button" |
|
1131
|
onClick={() => setSearchQuery("")} |
|
1132
|
className="absolute right-3 top-1/2 -translate-y-1/2 text-xs font-bold text-muted-foreground hover:text-foreground px-1.5 py-0.5 rounded bg-muted/60 cursor-pointer" |
|
1133
|
> |
|
1134
|
Clear |
|
1135
|
</button> |
|
1136
|
)} |
|
1137
|
</div> |
|
1138
|
<div className="text-xs text-muted-foreground font-medium self-end sm:self-auto shrink-0"> |
|
1139
|
Showing <strong className="text-foreground">{filteredDownloads.length}</strong> of {ALL_DOWNLOADS.length} utilities |
|
1140
|
</div> |
|
1141
|
</div> |
|
1142
|
|
|
1143
|
{/* Category Filter Tabs - Responsive flex-wrap without horizontal slider */} |
|
1144
|
<div className="flex flex-wrap items-center gap-1.5 pt-1"> |
|
1145
|
{categoryTabs.map((tab) => { |
|
1146
|
const isSelected = selectedTab === tab.id; |
|
1147
|
const Icon = tab.icon; |
|
1148
|
return ( |
|
1149
|
<button |
|
1150
|
key={tab.id} |
|
1151
|
type="button" |
|
1152
|
onClick={() => setSelectedTab(tab.id)} |
|
1153
|
className={cn( |
|
1154
|
"px-3 py-1.5 rounded-xl text-xs font-semibold transition-all duration-150 cursor-pointer border flex items-center gap-1.5 whitespace-nowrap select-none", |
|
1155
|
isSelected |
|
1156
|
? "bg-emerald-600 text-white border-emerald-600 shadow-xs font-bold ring-2 ring-emerald-500/25 scale-[1.02]" |
|
1157
|
: "bg-background/70 text-muted-foreground border-border/60 hover:text-foreground hover:bg-background hover:border-emerald-500/40" |
|
1158
|
)} |
|
1159
|
> |
|
1160
|
<Icon className={cn("h-3.5 w-3.5 shrink-0", isSelected ? "text-white" : "text-emerald-500")} /> |
|
1161
|
<span>{tab.label}</span> |
|
1162
|
<span |
|
1163
|
className={cn( |
|
1164
|
"text-[10px] px-1.5 py-0.2 rounded-full font-mono font-bold", |
|
1165
|
isSelected ? "bg-white/25 text-white" : "bg-muted text-muted-foreground" |
|
1166
|
)} |
|
1167
|
> |
|
1168
|
{tab.count} |
|
1169
|
</span> |
|
1170
|
</button> |
|
1171
|
); |
|
1172
|
})} |
|
1173
|
</div> |
|
1174
|
</div> |
|
1175
|
|
|
1176
|
{/* Downloads Grid */} |
|
1177
|
<div className="relative z-10 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 sm:gap-5"> |
|
1178
|
{filteredDownloads.map((item) => { |
|
1179
|
const Icon = item.icon; |
|
1180
|
const isCopied = copiedId === item.id; |
|
1181
|
|
|
1182
|
return ( |
|
1183
|
<div |
|
1184
|
key={item.id} |
|
1185
|
className={cn( |
|
1186
|
"rounded-2xl border bg-background/80 hover:bg-background/95 p-5 flex flex-col justify-between transition-all duration-200 group shadow-2xs hover:shadow-md relative overflow-hidden", |
|
1187
|
item.featured ? "border-emerald-500/40 ring-1 ring-emerald-500/20" : "border-border/60 hover:border-emerald-500/30" |
|
1188
|
)} |
|
1189
|
> |
|
1190
|
{item.featured && ( |
|
1191
|
<div className="absolute top-0 right-0"> |
|
1192
|
<div className="bg-emerald-500 text-white text-[9px] font-black uppercase tracking-widest px-3 py-0.5 rounded-bl-xl shadow-xs flex items-center gap-1"> |
|
1193
|
<Sparkles className="h-2.5 w-2.5" /> Essential |
|
1194
|
</div> |
|
1195
|
</div> |
|
1196
|
)} |
|
1197
|
|
|
1198
|
{/* Card Top */} |
|
1199
|
<div className="space-y-3"> |
|
1200
|
<div className="flex items-start justify-between gap-3 pr-14"> |
|
1201
|
<div className="h-10 w-10 rounded-xl bg-emerald-500/10 text-emerald-600 dark:text-emerald-400 border border-emerald-500/20 flex items-center justify-center shrink-0 group-hover:scale-105 transition-transform"> |
|
1202
|
<Icon className="h-5 w-5" /> |
|
1203
|
</div> |
|
1204
|
|
|
1205
|
<div className="flex flex-wrap items-center justify-end gap-1.5"> |
|
1206
|
<Badge variant="outline" className="text-[10px] font-bold uppercase tracking-wider px-2 py-0.5 border-border/60 bg-muted/30"> |
|
1207
|
{item.categoryLabel} |
|
1208
|
</Badge> |
|
1209
|
<Badge variant="secondary" className="text-[10px] font-mono font-bold px-2 py-0.5"> |
|
1210
|
{item.fileSize} |
|
1211
|
</Badge> |
|
1212
|
</div> |
|
1213
|
</div> |
|
1214
|
|
|
1215
|
<div> |
|
1216
|
<h3 className="text-sm font-bold text-foreground group-hover:text-emerald-600 dark:group-hover:text-emerald-400 transition-colors leading-snug"> |
|
1217
|
{item.name} |
|
1218
|
</h3> |
|
1219
|
<div className="flex items-center gap-2 text-[11px] text-muted-foreground mt-0.5"> |
|
1220
|
<span className="font-medium text-foreground/80">{item.developer}</span> |
|
1221
|
<span>•</span> |
|
1222
|
<span className="font-mono bg-muted/60 px-1.5 py-0.2 rounded text-[10px]">{item.version}</span> |
|
1223
|
<span>•</span> |
|
1224
|
<span className="text-emerald-600 dark:text-emerald-400 font-semibold">{item.license}</span> |
|
1225
|
</div> |
|
1226
|
</div> |
|
1227
|
|
|
1228
|
<p className="text-xs text-muted-foreground line-clamp-2 leading-relaxed"> |
|
1229
|
{item.description} |
|
1230
|
</p> |
|
1231
|
|
|
1232
|
{/* Recommended Use Callout */} |
|
1233
|
<div className="rounded-xl border border-border/40 bg-muted/30 p-2.5 text-[11px] space-y-1"> |
|
1234
|
<span className="font-bold text-foreground/90 flex items-center gap-1 text-[10px] uppercase tracking-wider text-emerald-600 dark:text-emerald-400"> |
|
1235
|
<ShieldCheck className="h-3 w-3" /> Bench Application: |
|
1236
|
</span> |
|
1237
|
<p className="text-muted-foreground leading-snug"> |
|
1238
|
{item.recommendedUse} |
|
1239
|
</p> |
|
1240
|
</div> |
|
1241
|
</div> |
|
1242
|
|
|
1243
|
{/* Card Bottom / Actions */} |
|
1244
|
<div className="pt-3 border-t border-border/40 space-y-2.5 mt-3"> |
|
1245
|
{item.sha256 && ( |
|
1246
|
<div className="flex items-center justify-between text-[10px] text-muted-foreground bg-muted/40 px-2.5 py-1 rounded-lg"> |
|
1247
|
<span className="font-mono truncate max-w-[180px]" title={item.sha256}> |
|
1248
|
SHA256: {item.sha256.substring(0, 16)}... |
|
1249
|
</span> |
|
1250
|
<button |
|
1251
|
onClick={() => handleCopyHash(item)} |
|
1252
|
className="text-emerald-600 dark:text-emerald-400 hover:underline flex items-center gap-1 font-semibold cursor-pointer shrink-0 ml-2" |
|
1253
|
> |
|
1254
|
{isCopied ? <Check className="h-3 w-3 text-emerald-500" /> : <Copy className="h-3 w-3" />} |
|
1255
|
<span>{isCopied ? "Copied" : "Copy"}</span> |
|
1256
|
</button> |
|
1257
|
</div> |
|
1258
|
)} |
|
1259
|
|
|
1260
|
<div className="flex items-center gap-2"> |
|
1261
|
<Button |
|
1262
|
onClick={() => handleDownload(item)} |
|
1263
|
className="flex-1 rounded-xl text-xs font-bold h-9 gap-1.5 bg-emerald-600 hover:bg-emerald-700 text-white shadow-xs cursor-pointer" |
|
1264
|
> |
|
1265
|
<Download className="h-3.5 w-3.5" /> |
|
1266
|
<span>Download Package</span> |
|
1267
|
</Button> |
|
1268
|
|
|
1269
|
{item.url && !item.url.startsWith("#") && ( |
|
1270
|
<Button |
|
1271
|
variant="outline" |
|
1272
|
size="icon" |
|
1273
|
onClick={() => window.open(item.url, "_blank", "noopener,noreferrer")} |
|
1274
|
className="h-9 w-9 rounded-xl border-border/60 hover:border-emerald-500/40 text-muted-foreground hover:text-foreground shrink-0 cursor-pointer" |
|
1275
|
title="Visit Official Developer Webpage" |
|
1276
|
> |
|
1277
|
<ExternalLink className="h-3.5 w-3.5" /> |
|
1278
|
</Button> |
|
1279
|
)} |
|
1280
|
</div> |
|
1281
|
</div> |
|
1282
|
</div> |
|
1283
|
); |
|
1284
|
})} |
|
1285
|
</div> |
|
1286
|
|
|
1287
|
{filteredDownloads.length === 0 && ( |
|
1288
|
<div className="rounded-2xl border border-dashed border-border/60 bg-muted/20 p-8 text-center space-y-2"> |
|
1289
|
<p className="text-xs font-semibold text-foreground"> |
|
1290
|
No downloads match "{searchQuery}" in this category. |
|
1291
|
</p> |
|
1292
|
<p className="text-[11px] text-muted-foreground"> |
|
1293
|
Try switching filter tabs or clearing your search input. |
|
1294
|
</p> |
|
1295
|
<Button |
|
1296
|
variant="outline" |
|
1297
|
size="sm" |
|
1298
|
onClick={() => { |
|
1299
|
setSelectedTab("all"); |
|
1300
|
setSearchQuery(""); |
|
1301
|
}} |
|
1302
|
className="rounded-xl text-xs h-8" |
|
1303
|
> |
|
1304
|
Reset Filters |
|
1305
|
</Button> |
|
1306
|
</div> |
|
1307
|
)} |
|
1308
|
</section> |
|
1309
|
); |
|
1310
|
} |