Skip to content

Add download options with embed chapters support - #4

Open
elewashy wants to merge 1 commit into
pablostanley:mainfrom
elewashy:feat/embed-chapters-download-options
Open

Add download options with embed chapters support#4
elewashy wants to merge 1 commit into
pablostanley:mainfrom
elewashy:feat/embed-chapters-download-options

Conversation

@elewashy

Copy link
Copy Markdown

Summary

Adds global download options with initial support for embedding chapters.

Motivation

Videos with timestamps can preserve those chapters in downloaded files, while keeping the default paste → format → download flow unchanged.

Closes #3.

Architecture

  • Introduces an immutable DownloadOptions model for global download preferences.
  • CLI parsing and the TUI both produce the same complete options model.
  • The download layer receives that model and is the only layer that translates enabled options into yt-dlp arguments.

UX

  • Adds --embed-chapters for CLI use.
  • From the format picker, ^o opens a lightweight Download Options dialog.
  • Space toggles the highlighted option, Enter applies the draft, and Esc discards it.
  • Download formats remain dedicated to formats; the dialog's bounded selector can grow with future global options.

Testing

  • npm run typecheck
  • npm test
  • npm run build

@elewashy
elewashy marked this pull request as ready for review July 17, 2026 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Time Stamps.

1 participant