[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80504":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":14,"lastSyncTime":29,"discoverSource":30},80504,"yt-dlp-tauri","Chlience\u002Fyt-dlp-tauri","Chlience","A minimal Windows desktop downloader powered by yt-dlp and Tauri 2. \u002F 基于 yt-dlp 和 Tauri 2 的轻量 Windows 桌面下载器。",null,"Rust",137,9,87,2,0,6,26,50,23,3,"GNU General Public License v3.0",false,"main",true,[],"2026-06-12 02:04:03","\u003Ch1 align=\"center\">yt-dlp-tauri\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>A minimal Windows\u002FmacOS desktop downloader powered by yt-dlp and Tauri 2.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\".\u002FREADME_zh.md\">中文\u003C\u002Fa> ·\n  \u003Ca href=\"#quick-start\">Quick Start\u003C\u002Fa> ·\n  \u003Ca href=\"#configuration\">Configuration\u003C\u002Fa> ·\n  \u003Ca href=\"#verification\">Verification\u003C\u002Fa> ·\n  \u003Ca href=\"#documentation\">Documentation\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg alt=\"Tauri 2\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTauri-2-24C8DB?logo=tauri\" \u002F>\n  \u003Cimg alt=\"Rust\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRust-backend-B7410E?logo=rust\" \u002F>\n  \u003Cimg alt=\"TypeScript\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTypeScript-typed-3178C6?logo=typescript\" \u002F>\n  \u003Cimg alt=\"Vite\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FVite-build-646CFF?logo=vite\" \u002F>\n  \u003Cimg alt=\"Windows and macOS\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWindows%20%2B%20macOS-desktop-0078D4?logo=windows\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg alt=\"yt-dlp-tauri English interface\" src=\".\u002Fdocs\u002Fassets\u002Freadme-en.png\" width=\"920\" \u002F>\n\u003C\u002Fp>\n\n---\n\n## What is yt-dlp-tauri?\n\n`yt-dlp-tauri` is a small desktop app for downloading videos with `yt-dlp` without writing command-line options by hand. Paste a video URL from a [site supported by yt-dlp](https:\u002F\u002Fgithub.com\u002Fyt-dlp\u002Fyt-dlp\u002Fblob\u002Fmaster\u002Fsupportedsites.md), preview the metadata, choose a quality, and download an MP4-friendly file from a focused desktop UI.\n\nThe project is desktop-first and local-first. It is not a hosted downloader service, does not provide multi-user accounts, and is not affiliated with `yt-dlp`, FFmpeg, Deno, or Tauri.\n\n## Features\n\n- Parse video metadata through `yt-dlp` and preview title, thumbnail, duration, source URL, description, and quality options.\n- Download with live progress, speed, ETA, cancellation, and a saved output folder.\n- Use Cookie files for authenticated sites, including Netscape `cookies.txt` and one-line browser Cookie headers.\n- Install, repair, and verify the app-managed platform toolchain from Settings.\n- Verify tools against fixed source URLs and SHA-256 hashes from a pinned manifest.\n- Switch the UI between English and Chinese.\n- Check GitHub Releases for app updates, with optional `gh-proxy` routing for update and release access.\n- Keep local operational logs for recent app activity.\n\n## Tech Stack\n\n| Layer | Choice |\n| --- | --- |\n| Desktop runtime | Tauri 2 |\n| Backend | Rust |\n| Frontend | Vanilla TypeScript, Vite |\n| UI | Fixed-size product-style desktop interface |\n| Toolchain | App-managed Windows\u002FmacOS `yt-dlp`, `ffmpeg`, `ffprobe`, `deno` |\n| Installer | Windows NSIS, macOS DMG |\n\n## Quick Start\n\nUse Windows or macOS for real app builds. WSL can run many checks, but release installers should be built on their target OS or by the GitHub Actions release workflow.\n\n### 1. Install prerequisites\n\n- Windows 10\u002F11 with WebView2 Runtime, or macOS\n- Node.js 20+ or 22+\n- Rust stable with the platform toolchain\n- PowerShell 5+ or PowerShell 7+ on Windows\n\n### 2. Install dependencies\n\n```powershell\nnpm ci\n```\n\n### 3. Optional: restore development tools\n\n```powershell\n.\\scripts\\download-tools.ps1\n```\n\nThis is optional for normal app use. If tools are missing, open the app, go to Settings, and click `Install tools`.\n\n### 4. Run the desktop app in development\n\n```powershell\nnpm run tauri dev\n```\n\n### 5. Build the desktop installer\n\n```powershell\nnpm run tauri build\n```\n\nThe configured bundle targets are `nsis` and `dmg`. Build output is written under platform-specific bundle directories such as:\n\n```text\nsrc-tauri\\target\\release\\bundle\\nsis\\\nsrc-tauri\u002Ftarget\u002Frelease\u002Fbundle\u002Fdmg\u002F\n```\n\n## Configuration\n\n| Item | Purpose |\n| --- | --- |\n| `src-tauri\u002Ftools-manifest.json` | Fixed tool versions, source URLs, target names, and SHA-256 hashes. |\n| `src-tauri\u002Ftauri.conf.json` | Tauri app metadata, fixed window size, bundle target, icons, and resources. |\n| `scripts\u002Fdownload-tools.ps1` | Optional development script that restores the pinned `win-x64` toolchain into the checkout. |\n| Settings: output folder | User-facing download directory selection, save, reset, and open actions. |\n| Settings: GitHub site | `Direct` or `gh-proxy` mode for update checks and release links. Project home always opens GitHub directly. |\n\nCurrent release scope:\n\n- Populated tool targets: `win-x64`, `macos-x64`, `macos-arm64`.\n- Planned manifest target: `win-arm64`, once every tool URL and hash is pinned.\n- Tool binaries are not committed to the repository.\n\n## Data, Storage, and Output\n\nDownloaded videos default to:\n\n```text\n%USERPROFILE%\\Downloads\\yt-dlp-tauri\\\n```\n\nApp state and logs are stored under:\n\n```text\n%LOCALAPPDATA%\\yt-dlp-tauri\\state\\\n%LOCALAPPDATA%\\yt-dlp-tauri\\logs\\app.log\n```\n\nInstalled app tools are written under:\n\n```text\n%LOCALAPPDATA%\\yt-dlp-tauri\\Tools\\win-x64\\\n```\n\nDevelopment checkout tools can live at:\n\n```text\nsrc-tauri\\Tools\\win-x64\\yt-dlp\\yt-dlp.exe\nsrc-tauri\\Tools\\win-x64\\ffmpeg\\bin\\ffmpeg.exe\nsrc-tauri\\Tools\\win-x64\\ffmpeg\\bin\\ffprobe.exe\nsrc-tauri\\Tools\\win-x64\\deno\\deno.exe\n```\n\n## Verification\n\nFrontend tests:\n\n```powershell\nnpm test\n```\n\nFrontend build:\n\n```powershell\nnpm run build\n```\n\nRust backend tests:\n\n```powershell\ncargo test --manifest-path .\\src-tauri\\Cargo.toml --lib\n```\n\nRust backend check:\n\n```powershell\ncargo check --manifest-path .\\src-tauri\\Cargo.toml\n```\n\nFull Tauri build:\n\n```powershell\nnpm run tauri build\n```\n\n## Documentation\n\n- [Changelog](.\u002FCHANGELOG.md)\n- [Contributing](.\u002FCONTRIBUTING.md)\n- [Security policy](.\u002FSECURITY.md)\n- [Third-party notices](.\u002FTHIRD-PARTY-NOTICES.md)\n- [Tool manifest](.\u002Fsrc-tauri\u002Ftools-manifest.json)\n\n## Star History\n\n\u003Ca href=\"https:\u002F\u002Fwww.star-history.com\u002F?repos=Chlience%2Fyt-dlp-tauri&type=date&legend=top-left\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=Chlience\u002Fyt-dlp-tauri&type=date&theme=dark&legend=top-left\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=Chlience\u002Fyt-dlp-tauri&type=date&legend=top-left\" \u002F>\n   \u003Cimg alt=\"Star History Chart\" src=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=Chlience\u002Fyt-dlp-tauri&type=date&legend=top-left\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n## Release Checklist\n\nBefore publishing a release:\n\n1. Run the verification commands above.\n2. Push a version tag such as `v0.1.3`.\n3. Wait for the `Release` workflow to upload Windows NSIS and macOS DMG artifacts to the draft GitHub Release.\n4. Confirm `src-tauri\u002Ftools-manifest.json` uses fixed release URLs, not `latest`.\n5. Confirm generated folders and restored tools are not staged.\n6. Include the GPL license and third-party notices with the release.\n\n## Legal\n\nThis project is licensed under GPL-3.0. The app downloads and uses third-party command-line tools with their own licenses and redistribution obligations. See [THIRD-PARTY-NOTICES.md](.\u002FTHIRD-PARTY-NOTICES.md).\n\nThis project is not affiliated with `yt-dlp`, FFmpeg, Deno, or Tauri.\n","yt-dlp-tauri 是一个基于 yt-dlp 和 Tauri 2 的轻量级 Windows 和 macOS 桌面视频下载器。该项目允许用户通过简单的界面操作，无需手动输入命令行参数即可下载来自支持站点的视频，并提供视频元数据预览、选择下载质量等功能。技术上，它使用 Rust 作为后端语言，TypeScript 和 Vite 构建前端界面，确保了应用的高性能与良好的用户体验。适用于需要频繁从网络平台下载视频但又不想直接使用命令行工具的个人用户或小团队。此外，还支持 Cookie 文件登录验证、工具链管理和自动更新检查等特性，增强了软件的功能性和易用性。","2026-06-11 04:01:01","CREATED_QUERY"]