Skip to content

Releases: WarlaxZ/torlink

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 10 Jul 19:33
0c0e757

Brings the fork up to date with upstream baairon/torlink v1.4.0 — headless server modes and a new source — plus a Favourites library and the project's first linting + CI setup.

Highlights

🖥️ Headless modes (run without the TUI — servers & seedboxes)

torlink now runs entirely without the interactive UI, so it fits on a box you SSH into:

  • torlnk watch <dir> — watch-folder: drop a .torrent, or a .magnet/.txt holding a magnet or info hash, into the folder and it downloads, then seeds. Handled files move to .processed / .failed. Add --to <dir> to choose where files land.
  • torlnk serve — small HTTP add API on :9161 (POST /add, GET /downloads, GET /health).
  • torlnk files — read-only, range-aware HTTP server on :9160 that streams completed downloads to a browser or media player (supports seeking/resuming).
  • torlnk attach — run the TUI inside a persistent tmux session; detach with ctrl-b d, log out, and reattach later with downloads/seeds still running.
  • --daemon — background any headless mode in its own session, logging to a file, so it survives logout.
  • Seed reaper--seed-time <dur> (e.g. 1h, 30m, 2d) stops seeding a torrent that long after it finishes; add --delete-files to also remove the data.

The headless HTTP servers bind to 127.0.0.1 by default; binding a public --host requires a --token (or TORLINK_API_TOKEN / TORLINK_FILES_TOKEN).

⭐ Favourites (Library) for video series

A persistent Favourites/Library for Movies, TV, and Anime — the picker now stays open as you add entries instead of closing after each one.

🔎 Search

  • New source: BitTorrented (Movies + TV).
  • Sources can now belong to multiple categories, so a general index like BitTorrented shows under every tab it serves.
  • Streaming search updates are coalesced (≈150ms) so bursts of fast-returning sources no longer drop keystrokes or flood the UI.

🐛 Fixes

  • 1337x scraper loading speed optimized.
  • node-datachannel now rebuilds from source when the prebuilt binary fails to load on Node 22+.
  • Headless HTTP servers locked down, HTTP tracker endpoints added, and the real version is now reported.

🔧 Tooling

  • ESLint (flat config) wired up — npm run lint / lint:fix. The codebase already contained eslint-disable directives but never shipped a config; this makes them live.
  • CI: a new workflow runs typecheck + lint + tests on every PR and push to main (previously there was no PR CI — releases only built on tag).

Downloads

Grab the build for your platform below and run torlnk. Verify against SHA256SUMS if you like.

Platform Asset
Linux (x64) torlnk-linux-x64.tar.gz
macOS (Apple Silicon) torlnk-macos-arm64.tar.gz
macOS (Intel) torlnk-macos-x64.tar.gz
Windows (x64) torlnk-windows-x64.zip

What's Changed

  • Sync with upstream baairon/torlink v1.4.0 (headless watch/serve/files, --daemon, tmux attach, seed reaper, BitTorrented source, 1337x speedup, streaming coalescing) by @WarlaxZ in #26
  • feat: keep stream picker open + Favourites (Library) for video series by @WarlaxZ in #24
  • chore: add ESLint (flat config) + CI, and bump version to 1.5.0 by @WarlaxZ in #26

Full Changelog: v1.4.0...v1.5.0

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 08 Jul 15:25
c18f6bc

Streaming quality-of-life improvements and much better media-player detection on Windows.

Highlights

🎬 Smarter stream file picker

When an archive holds several videos, the picker is now easier to work with:

  • Sorted by title by default (numeric-aware, so E02 comes before E10) instead of by file size.
  • Press s to toggle between title and size ordering — your highlighted file stays selected across the switch.
  • Fills the window — the list now uses the available screen height (with scrolling and an n/total counter) instead of a fixed 8-row box, and no longer clips the last file.

🪟 Better Windows media-player detection

Windows GUI players are rarely on PATH, so torlink often couldn't find an installed player. It now looks in the standard install locations for:

  • VLC
  • Windows Media Player
  • mpv.net
  • MPC-HC / MPC-HC64 (including K-Lite Codec Pack)
  • MPC-BE
  • PotPlayer

Downloads

Grab the build for your platform below and run torlnk. Verify against SHA256SUMS if you like.

Platform Asset
Linux (x64) torlnk-linux-x64.tar.gz
macOS (Apple Silicon) torlnk-macos-arm64.tar.gz
macOS (Intel) torlnk-macos-x64.tar.gz
Windows (x64) torlnk-windows-x64.zip

What's Changed

  • Sync with upstream baairon/torlink v1.3.1 by @WarlaxZ in #20
  • feat: add local Windows bundle cross-build script by @WarlaxZ in #21
  • Stream picker: title sort + toggle, taller list; broader Windows player detection by @WarlaxZ in #22
  • chore: bump version to 1.4.0 by @WarlaxZ in #23

Full Changelog: v1.2.1...v1.4.0

v1.2.1

Choose a tag to compare

@github-actions github-actions released this 05 Jul 22:41
72b6c04

Highlights

Fix: typing a search no longer jumps you to another screen. On the splash/search landing page the search box is always focused, but a stray single-key shortcut (a → Accounts) was also live — so typing a query like "alex" navigated away on the first keystroke. The splash is now search-only: it owns everything you type.

  • Type freely — no keystroke triggers a shortcut on the search screen.
  • Press Tab to drop into the sidebar menu, where navigation and shortcuts (Accounts, Watchlist, settings, etc.) live.
  • / still recall recent searches, Enter searches, and esc / ^c quit.

What's Changed

  • fix(splash): stop single-key shortcuts firing while typing a search by @WarlaxZ in #19

Full Changelog: v1.1.0...v1.2.1

1.1.0 - The Big Push

Choose a tag to compare

@github-actions github-actions released this 05 Jul 22:07

torlink (WarlaxZ fork) — features upstream doesn't have

🚀 Headline additions

Real-Debrid integration — the biggest one. Plug in a Real-Debrid account and torlink pulls torrents onto RD's servers for full-speed, seeder-independent, IP-private downloads and streaming.

  • Download (r) and stream (v) via Real-Debrid
  • Persistent account status badge in the header; validated-account tracking
  • Pause/resume RD downloads (keeps partial file, resumes via re-resolve + HTTP Range)
  • Concurrency scheduler with a queued state, capped concurrency, backoff requeue, and patient retry pacing (retries Cloudflare-fronted 503s instead of failing)
  • Clearer failure messages (dead/removed vs busy, surfaced error slug)
  • Auto-copies the direct link once it resolves; re-prompts for a token when rejected

Torrent streaming (WebTorrent) — stream while you download, no Real-Debrid required.

  • Ephemeral P2P stream engine; press v to open the largest video in your player as it downloads
  • Automatic route decision: Real-Debrid when available, torrent stream as a confirmed fallback
  • Multi-file stream picker; cancellable, phase-aware "preparing" state
  • Offer to keep a completed stream as a real download + seed (otherwise cleaned up)
  • One-time privacy warning before the first P2P stream

Accounts pane — a dedicated sidebar section to sign in/out of services (Real-Debrid, RuTracker) with per-service status, replacing the old scattered k/R hotkeys.

RuTracker source — session auth with cookie persistence, CP1251 handling, and a captcha-fallback login prompt. Registered across Games, Movies, TV, Anime, Music, and Books.

📚 More to search

  • Books category (The Pirate Bay, Nyaa) — brand new
  • Music category (The Pirate Bay, 1337x) — brand new
  • Torrents.csv added to Movies
  • RuTracker across every category
  • Upstream has 4 categories; we have 6

🔒 Network & privacy

  • Custom DNS (DNS-over-HTTPS) — in-app picker to bypass networks that sinkhole torrent domains
  • VPN kill switch — fail-closed route guard; blocks P2P traffic unless your configured VPN interface owns the default route

⚙️ Download control

  • Selective multi-file downloads — choose exactly which files to grab from a multi-file torrent (Space/a/Enter)
  • Transfer limits & seeding targets (Shift+L) — up/down bandwidth caps and automatic seed-ratio / seed-time targets
  • Delivery-method badge (RD vs P2P) on completed downloads
  • Deletes partial files when cancelling a paused download

🔍 Search & UX quality-of-life

  • Alive-only filter (z) — hide dead / zero-seeder results
  • Saved searches / Watchlist (w) — save searches and re-run them later
  • Recall recent searches with the up arrow
  • Persist sort & category preferences across launches
  • Enable/disable individual sources + auto-skip repeatedly-failing sources (health check)
  • Source provenance for duplicate results (shows every source a result came from)
  • Download status markers on result rows; persistent body panes so results survive navigation; cursor/focus preserved when queueing or switching tabs
  • Better search-field editing (forward-Delete, Home/End) and clipboard copy that also works under WSL

📦 Distribution & diagnostics

  • Self-contained release bundles via a GitHub Actions workflow + one-line curl | sh installer (no Node required)
  • Best-effort rotating diagnostic logger (RD lifecycle, retries, session start; token never logged), with the log path shown in --help