Skip to content

Repository files navigation

Thunder Logo

Thunder

Desktop media downloader, player, and utility toolbox

Website · Русский · Українська · Application guide

Build Status

Downloads

  • Download the latest Windows or macOS installer from the official Thunder download center.
  • Automated releases publish Windows NSIS and macOS DMG installers for Intel and Apple Silicon on GitHub Releases.
  • Linux AppImage packaging is available through pnpm run build-linux, but it is not part of the current release workflow.
  • Current macOS and Windows artifacts are unsigned.
  • Windows uses a per-machine NSIS installer with elevation. macOS registers supported media as alternate Open With types without taking them by default.

Features

  • Video and audio downloads powered by yt-dlp, with ffmpeg processing.
  • Video, video-only, audio, and MP3 quality choices before download.
  • Persistent queue, playlist enqueueing, duplicate protection, and up to two parallel downloads.
  • Clipboard detection, URL preview, YouTube background/live preview, and quick actions.
  • Non-blocking Player media library with local audio/video, playlists, transient Up Next queue, M3U/M3U8, YouTube quality selection, and HLS/FFmpeg codec fallback.
  • System playback integration through Media Session, macOS Dock controls, media-file associations, and Finder/Explorer open-file handling.
  • Windows 11-style tray panel with system-theme support, compact quick actions, complete keyboard navigation, and a native-menu fallback.
  • Download history with search, source filters, sorting, pagination, undo, and CSV/JSON export.
  • Products formatter for cleaning, grouping, validating, and copying structured product lists.
  • Tools workspace with WG Unlock, Hash Check, Media Inspector, File Sorter, Backup, and Windows shortcuts.
  • File Sorter uses persistent editable categories, mandatory operation preview, per-file selection, conflict handling, export, and one-step undo.
  • Automatic application updates on Windows and managed yt-dlp, ffmpeg, ffprobe, and Deno dependencies.
  • Russian and English interface, themes, keyboard shortcuts, and configurable modules.

See the application guide for section details and platform limitations.

Screenshots

Downloader section Tools section Player section Settings

Tech Stack & Tooling

  • Electron 41 - desktop runtime
  • Vanilla JavaScript - main and renderer modules
  • Nunjucks - generated application markup
  • SCSS - component and platform styles
  • Jest, ESLint, and TypeScript checkJs - tests and static checks
  • hls.js - HLS playback in Chromium
  • yt-dlp, ffmpeg/ffprobe, and Deno - managed runtime tools
  • pnpm - package manager

Scripts

Command Purpose
pnpm start Build generated assets and run the app
pnpm run dev Run in dev mode with --dev flag
pnpm run dev:watch Run development mode with file watchers
pnpm run build Package the app for your platform
pnpm run build-mac / pnpm run build-linux Platform-specific builds
pnpm test Run Jest tests
pnpm run typecheck:player Player/main JavaScript type check
pnpm run check Lint + Player typecheck + tests
pnpm run css:build Build CSS from SCSS
pnpm run css:watch Watch & rebuild SCSS
pnpm run templates:build Rebuild HTML from Nunjucks templates
pnpm run templates:watch Watch & rebuild templates on change
pnpm run whats-new:build Build release notes from whats-new*.md
pnpm run whats-new:watch Watch & rebuild release notes
pnpm run format Format sources with Prettier

Development

Clone the repository and install dependencies:

git clone https://github.com/Nagrands/thunder-load-app.git
cd thunder-load-app
pnpm install

Run the app in development mode:

pnpm run dev

If you edit templates, styles, or release notes, run the matching build scripts or use the *:watch commands.

Configuration

  • Choose the downloads folder from Downloader. Settings controls the managed tools directory, language, theme, and Downloader behavior. Tools and Backup are always available.
  • Default data locations remain under the legacy Thunder Load folder for compatibility: macOS ~/Library/Application Support/Thunder Load, Windows %APPDATA%/Thunder Load, Linux ~/.config/Thunder Load.
  • Use the dependency manager in Tools to inspect, update, reinstall, migrate, or reset runtime dependencies. Linux may require ffmpeg/ffprobe from the system package manager, and compatible tools can also be resolved from PATH.

Documentation

Contributing

Open issues and pull requests on the GitHub repository.

Releases

Contributors

Languages