Files
AeroFetch/electron-builder.yml
T
debont80 1a2270c95e Initial commit: AeroFetch — yt-dlp/YouTube downloader for Windows
Electron + React (Fluent UI) desktop frontend for yt-dlp:
- Download queue with live progress, concurrency cap, cancel/retry
- Format/quality picker via yt-dlp probe; audio extraction to MP3
- Settings + history persistence (electron-store / JSON)
- Clipboard link auto-detect; persisted light/dark theme
- NSIS + portable packaging (binaries bundled at build time, not in git)

UI: "Studio" sidebar layout with a toffee-brown theme (light + neutral dark).
Dropdowns use a native <select> and tooltips a CSS-only Hint, to avoid a
dev-machine GPU overlay flicker/blank issue.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 18:17:41 -04:00

50 lines
1.6 KiB
YAML

appId: com.aerofetch.app
productName: AeroFetch
copyright: yt-dlp frontend
directories:
buildResources: build
output: dist
files:
- '!**/.vscode/*'
- '!src/*'
- '!electron.vite.config.{js,ts,mjs,cjs}'
- '!{.eslintignore,.eslintrc.cjs,.eslintrc.js,.prettierignore,.prettierrc.yaml,dev-app-update.yml,CHANGELOG.md,README.md}'
- '!{.env,.env.*,.npmrc,pnpm-lock.yaml,package-lock.json}'
- '!{tsconfig.json,tsconfig.node.json,tsconfig.web.json,tsconfig.tsbuildinfo}'
# yt-dlp.exe + ffmpeg.exe ship outside the asar archive so they can be spawned
# directly. They land in <install>/resources/bin, reachable via process.resourcesPath.
extraResources:
- from: resources/bin
to: bin
filter:
- '**/*'
win:
# Two artifacts:
# - nsis → regular installer (Start-menu shortcut + uninstaller). Per-user
# (installs to %LOCALAPPDATA%), so it needs NO admin rights.
# - portable → single self-contained .exe. No install, no admin; runs from a
# USB stick / Downloads folder on a locked-down public PC.
target:
- nsis
- portable
# Never request admin elevation.
requestedExecutionLevel: asInvoker
# icon: build/icon.ico # add before release
portable:
artifactName: ${productName}-${version}-portable.${ext}
# Fixed extraction dir name so repeated launches reuse it instead of re-extracting.
unpackDirName: AeroFetch
requestExecutionLevel: user
nsis:
oneClick: false
perMachine: false
allowToChangeInstallationDirectory: true
deleteAppDataOnUninstall: false
# Flip perMachine to true for an all-users install to Program Files (requires admin).