ani-cli web

A small local web UI for a system-wide ani-cli install.

Current version: 0.2.1

Project Layout

ani-cli-web/
  app.py          Web server, queue, search, and post-download library naming.
  ani-cli-web     Launcher script.
  VERSION         Project version.
  CHANGELOG.md    Change history.
  README.md       Project documentation.

Run

./ani-cli-web

Then open:

http://127.0.0.1:8421/

The app searches anime, queues downloads, supports original or dubbed mode, quality, episode ranges, editable library names, season numbers, and a default download folder.

The queue is stored in SQLite, shown 10 jobs at a time, and includes bulk actions for removing finished jobs and retrying failed jobs.

Downloads are staged in the web app state directory first. After ani-cli finishes, the wrapper moves them into a Plex/Jellyfin-friendly layout:

ANI_CLI_DOWNLOAD_DIR/anime_name/Season 01/anime_name - S01E01.mp4

Watchlist (New)

A new feature allows tracking anime that is not yet finished airing.

  1. Add Anime: Use the "Add to Watchlist" section to track an anime by providing its show_id and desired mode (sub/dub).
  2. Status Check: Periodically check the status to see if the anime has finished airing.
  3. Download Trigger: Once the status is marked as "ready_to_download" (indicating completion), you can manually trigger a download job for the entire series.

The watchlist data is stored in the application state directory.

  • ANI_CLI_BIN: path or command name for ani-cli; defaults to ani-cli from PATH.
  • ANI_CLI_DOWNLOAD_DIR: initial default download folder.
  • ANI_CLI_MODE: initial mode, sub or dub.
  • ANI_CLI_QUALITY: initial quality, for example best, 1080, or 720.
  • ANI_CLI_WEB_HOST: server host, default 127.0.0.1.
  • ANI_CLI_WEB_PORT: server port, default 8421.

Settings, queue data, and staging files are stored under XDG config/state directories when writable, with a local .ani-cli-web/ fallback inside this project. Existing queue.json data is migrated into SQLite automatically.

Runtime folders such as .ani-cli-web/, downloads/, and Python bytecode cache directories at any depth are ignored by git.

S
Description
No description provided
Readme
530 KiB
Languages
Python 99.4%
Dockerfile 0.4%
Shell 0.2%