imSp4rky e685710fba refactor(api): register each route once and merge duplicated handler code
Swagger now owns route registration instead of adding a second dead copy of every route; add json_body, enqueue_job, serialize_tracks and client_credential, build the serve middleware list once, and scan the users once per request.
2026-11-02 15:06:52 -07:00
2025-07-18 00:46:05 +00:00
2025-07-18 00:46:05 +00:00
2026-10-01 12:22:49 -06:00
2025-07-18 00:46:05 +00:00
2025-07-18 00:46:05 +00:00

no_encryption unshackle
Movie, TV, and Music Archival Software
Discord

Install  ·  Docs  ·  Discord


A modular archival tool for movies, TV, and music. Fork of Devine with DASH/HLS/ISM parsing, Widevine & PlayReady DRM, and a REST API.

unshackle demo

Install

The recommended way is a git clone with the install script. The script installs uv and unshackle, then runs unshackle setup to download the external tools and write a first config.

git clone https://github.com/unshackle-dl/unshackle.git
cd unshackle
sh install.sh                 # Windows: .\install.bat
uv run unshackle env check

In a clone, run every command as uv run unshackle ....

Note

Advanced: uv tool install git+https://github.com/unshackle-dl/unshackle.git installs unshackle into the tool folder of uv, not a folder that you choose. unshackle setup then puts the tools, config, and data in your user data and config directories. See Installation for details.

Requirements

External tools. (recommended versions):

Optional:

License

GPL-3.0. Do not use unshackle for content you do not have the rights to. Keep the core free and open. Keep service code private. Be kind.

S
Description
No description provided
Readme GPL-3.0
53 MiB
Languages
Python 99.9%