|
60 | 60 | "@id": "https://hydra.javad.dev/features.html#webpage", |
61 | 61 | "url": "https://hydra.javad.dev/features.html", |
62 | 62 | "name": "Feature Deep Dive — Hydra Download Manager (HDM)", |
63 | | - "description": "All 28 engine, storage, networking, embedding and interface features of Hydra Download Manager.", |
| 63 | + "description": "All 30 engine, storage, networking, embedding and interface features of Hydra Download Manager.", |
64 | 64 | "isPartOf": { |
65 | 65 | "@id": "https://hydra.javad.dev/#website" |
66 | 66 | }, |
@@ -290,21 +290,21 @@ <h3>Designed for Files of Any Practical Size</h3> |
290 | 290 | <section class="toolbar-sec"> |
291 | 291 | <div class="wrap toolbar-inner"> |
292 | 292 | <div class="filter-pills" id="categoryFilterGroup"> |
293 | | - <button class="pill-btn active" data-category="all">All Features (28)</button> |
| 293 | + <button class="pill-btn active" data-category="all">All Features (30)</button> |
294 | 294 | <button class="pill-btn" data-category="engine">Core Engine (7)</button> |
295 | 295 | <button class="pill-btn" data-category="storage">Memory & Storage (4)</button> |
296 | | - <button class="pill-btn" data-category="network">Network & Protocols (4)</button> |
| 296 | + <button class="pill-btn" data-category="network">Network & Protocols (5)</button> |
297 | 297 | <button class="pill-btn" data-category="ffi">Embedding & FFI (7)</button> |
298 | | - <button class="pill-btn" data-category="ui">Desktop & CLI (6)</button> |
| 298 | + <button class="pill-btn" data-category="ui">Desktop & CLI (8)</button> |
299 | 299 | </div> |
300 | 300 | <div class="search-box"> |
301 | 301 | <svg 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 21l-4.35-4.35"/></svg> |
302 | | - <input type="text" id="featureSearchInput" placeholder="Filter 28 features..." aria-label="Search features"> |
| 302 | + <input type="text" id="featureSearchInput" placeholder="Filter 30 features..." aria-label="Search features"> |
303 | 303 | </div> |
304 | 304 | </div> |
305 | 305 | </section> |
306 | 306 |
|
307 | | -<!-- 28 Features Deep Dive Section --> |
| 307 | +<!-- 30 Features Deep Dive Section --> |
308 | 308 | <main class="features-container"> |
309 | 309 | <div class="wrap"> |
310 | 310 | <div class="features-grid" id="featuresGrid"> |
@@ -1000,6 +1000,61 @@ <h2 class="feat-title">Consistent Semantics Across Products</h2> |
1000 | 1000 | </div> |
1001 | 1001 | </article> |
1002 | 1002 |
|
| 1003 | + <!-- Feature 29 --> |
| 1004 | + <article class="feat-card" data-category="ui" data-keywords="plugins wasm webassembly sandbox youtube torrent catalog sdk hyaplugin extensions"> |
| 1005 | + <div> |
| 1006 | + <div class="feat-top"> |
| 1007 | + <span class="feat-num">29</span> |
| 1008 | + <span class="feat-category">Desktop & CLI</span> |
| 1009 | + </div> |
| 1010 | + <h2 class="feat-title">Sandboxed Plugin System</h2> |
| 1011 | + <p class="feat-desc">Add YouTube, BitTorrent and more through signed <code>.hyaplugin</code> packages that run in a WebAssembly sandbox with fuel metering and declared permissions. Install from the online catalog in one click, review what a plugin may do before it runs, and build your own with the SDK for Rust, C, Go, Python or Node.js.</p> |
| 1012 | + </div> |
| 1013 | + <div class="feat-canvas-wrap"> |
| 1014 | + <svg viewBox="0 0 320 110" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 1015 | + <rect x="20" y="25" width="90" height="60" rx="6" fill="#0e0e11" stroke="rgba(255,255,255,0.25)"/> |
| 1016 | + <text x="65" y="50" fill="#a1a1aa" font-size="8" text-anchor="middle">Catalog</text> |
| 1017 | + <text x="65" y="68" fill="#2596e8" font-size="8" font-family="'Geist Mono'" text-anchor="middle">.hyaplugin</text> |
| 1018 | + <path d="M115 55 L150 55" stroke="#2dd4d4" stroke-width="1.5" stroke-dasharray="4 2"/> |
| 1019 | + <rect x="155" y="15" width="80" height="80" rx="6" fill="#141417" stroke="#2dd4d4" stroke-dasharray="3 2"/> |
| 1020 | + <text x="195" y="35" fill="#2dd4d4" font-size="8" font-family="'Geist Mono'" text-anchor="middle">WASM sandbox</text> |
| 1021 | + <rect x="167" y="45" width="56" height="18" rx="3" fill="#2dd4d4"/> |
| 1022 | + <text x="195" y="57" fill="#06282e" font-size="8" font-weight="700" text-anchor="middle">Plugin</text> |
| 1023 | + <text x="195" y="82" fill="#a1a1aa" font-size="7" font-family="'Geist Mono'" text-anchor="middle">permissions</text> |
| 1024 | + <path d="M240 55 L270 55" stroke="#2dd4d4" stroke-width="1.5"/> |
| 1025 | + <rect x="272" y="40" width="34" height="30" rx="4" fill="#141417" stroke="#2dd4d4"/> |
| 1026 | + <text x="289" y="59" fill="#fafafa" font-size="8" font-weight="700" text-anchor="middle">Core</text> |
| 1027 | + </svg> |
| 1028 | + </div> |
| 1029 | + </article> |
| 1030 | + |
| 1031 | + <!-- Feature 30 --> |
| 1032 | + <article class="feat-card" data-category="network" data-keywords="cookies browser cookie import session login authenticated downloads cookies-from-browser cookie jar"> |
| 1033 | + <div> |
| 1034 | + <div class="feat-top"> |
| 1035 | + <span class="feat-num">30</span> |
| 1036 | + <span class="feat-category">Network & Protocols</span> |
| 1037 | + </div> |
| 1038 | + <h2 class="feat-title">Browser Cookie Import for Logged-In Downloads</h2> |
| 1039 | + <p class="feat-desc">Reuse the session you already have in Chrome, Firefox, Edge, Brave, Safari and more to fetch files behind a login. Hydra reads the browser's own cookie store, even while the browser is open, and sends only the cookies that belong to the host being downloaded from. Values are never logged, and nothing touches disk unless you ask for a cookie jar.</p> |
| 1040 | + </div> |
| 1041 | + <div class="feat-canvas-wrap"> |
| 1042 | + <svg viewBox="0 0 320 110" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 1043 | + <rect x="20" y="20" width="100" height="70" rx="6" fill="#0e0e11" stroke="rgba(255,255,255,0.25)"/> |
| 1044 | + <text x="70" y="42" fill="#a1a1aa" font-size="9" text-anchor="middle">Browser Profile</text> |
| 1045 | + <rect x="32" y="52" width="76" height="14" rx="3" fill="#141417" stroke="rgba(255,255,255,0.2)"/> |
| 1046 | + <text x="70" y="62" fill="#2596e8" font-size="7.5" font-family="'Geist Mono'" text-anchor="middle">cookies.sqlite</text> |
| 1047 | + <rect x="32" y="70" width="76" height="14" rx="3" fill="#141417" stroke="rgba(255,255,255,0.2)"/> |
| 1048 | + <text x="70" y="80" fill="#2596e8" font-size="7.5" font-family="'Geist Mono'" text-anchor="middle">Cookies (enc.)</text> |
| 1049 | + <path d="M125 55 L190 55" stroke="#2dd4d4" stroke-width="2" stroke-dasharray="4 2"/> |
| 1050 | + <text x="157" y="45" fill="#2dd4d4" font-size="7.5" font-family="'Geist Mono'" text-anchor="middle">host-scoped</text> |
| 1051 | + <rect x="195" y="20" width="105" height="70" rx="6" fill="#141417" stroke="#2dd4d4"/> |
| 1052 | + <text x="247" y="48" fill="#fafafa" font-size="10" font-weight="700" text-anchor="middle">Hydra Core</text> |
| 1053 | + <text x="247" y="65" fill="#2dd4d4" font-size="8" font-family="'Geist Mono'" text-anchor="middle">Authenticated GET</text> |
| 1054 | + </svg> |
| 1055 | + </div> |
| 1056 | + </article> |
| 1057 | + |
1003 | 1058 | </div> |
1004 | 1059 | </div> |
1005 | 1060 | </main> |
|
0 commit comments