Skip to content

SmallThingz/subdl

Repository files navigation

SubDL Zig Scrapers

Subtitle scrapers in Zig with a shared provider API, a CLI, and a Vaxis TUI.

Zig Providers Runtime

What This Project Provides

  • 12 provider integrations behind one unified app layer (providers_app).
  • One binary:
    • scrapers (CLI mode by default, TUI mode via --tui or tui).
  • Library API exported from src/lib.zig.
  • Runtime networking through Zig std.http.Client (no curl dependency in runtime flows).

Providers

Provider id Site
subdl_com subdl.com
opensubtitles_com opensubtitles.com
opensubtitles_org opensubtitles.org
moviesubtitles_org moviesubtitles.org
moviesubtitlesrt_com moviesubtitlesrt.com
podnapisi_net podnapisi.net
yifysubtitles_ch yifysubtitles.ch
subtitlecat_com subtitlecat.com
isubtitles_org isubtitles.org
my_subs_co my-subs.co
subsource_net subsource.net
tvsubtitles_net tvsubtitles.net

Quick Start

zig build
zig build test

List providers:

zig build run -- --list-providers

Run CLI:

zig build run -- --provider subsource_net --query "The Matrix"
zig build run -- --provider subsource_net --query "The Matrix" --extract

Run TUI:

zig build run-tui

Install binaries:

zig build install

Build cross-target binaries into zig-out/bin:

zig build build-all-targets
zig build build-all-targets -Doptimize=ReleaseFast -Dstrip=true

Targets produced by build-all-targets:

  • scrapers-x86_64-linux-gnu
  • scrapers-aarch64-linux-gnu
  • scrapers-x86_64-macos-none
  • scrapers-aarch64-macos-none
  • scrapers-x86_64-windows-gnu.exe

Tunable build flags:

  • -Doptimize=Debug|ReleaseSafe|ReleaseFast|ReleaseSmall
  • -Dstrip=true|false
  • -Dsingle-threaded=auto|on|off
  • -Domit-frame-pointer=auto|on|off
  • -Derror-tracing=auto|on|off
  • -Dpic=auto|on|off

build-all-targets uses sane defaults when flags are omitted:

  • -Doptimize defaults to ReleaseFast for that step
  • -Dstrip defaults to true for that step

Docs

About

All your subtitle are belong to us

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages