Skip to content

thisizaro/animecli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎌 animecli

Watch anime directly from your terminal — no browser, no ads, no distractions.

Built in Go (zero external dependencies), runs on Linux, macOS and Windows.

   ▄▄▄·  ▐ ▄ ▪  • ▌ ▄ ·. ▄▄▄ .  ▄▄·  ▄▄▌  ▪
  ▐█ ▀█ •█▌▐███  ·██ ▐███▪▀▄.▀·▐█ ▌▪ ██•  ██
  ▄█▀▀█ ▐█▐▐▌▐█· ▐█ ▌▐▌▐█·▐▀▀▪▄██ ▄▄ ██▪  ▐█·
  ▐█ ▪▐▌██▐█▌▐█▌ ██ ██▌▐█▌▐█▄▄▌▐███▌ ▐█▌▐▌▐█▌
   ▀  ▀ ▀▀ █▪▀▀▀ ▀▀  █▪▀▀▀ ▀▀▀ ·▀▀▀  .▀▀▀ ▀▀▀

         watch anime from your terminal
  powered by AniList + AllAnime  |  streams in MPV

How it works — the source chain

Free anime sites like AnimePahe, 9Anime, and the old Zoro/HiAnime don't produce content themselves. They are aggregators and scrapers that:

  1. Scrape or mirror encode groups (e.g. SubsPlease, Erai-raws, HorribleSubs) who rip from legal sources like Crunchyroll or Funimation.
  2. Re-host video files on CDNs (Akamai, Cloudflare, BunnyCDN) and serve HLS (.m3u8) streams or direct MP4 links.
  3. Use embed players (like Kwik, StreamSB, Vidstreaming) that obfuscate the actual CDN URLs behind JavaScript.

animecli bypasses all of that:

Layer What it does
AniList GraphQL API Official, free API for anime search, metadata, genres, episode counts
AllAnime The same backend used by the popular ani-cli shell script — exposes a GraphQL endpoint that returns direct CDN stream URLs
MPV Plays HLS (.m3u8) and MP4 streams with subtitle support, hardware decoding, seeking
yt-dlp / ffmpeg Used for downloading episodes (optional, falls back to raw HTTP)

Features

  • 🔍 Search anime by name, powered by AniList
  • 📂 Browse by genre / season / year (Action, Romance, Fantasy, etc.)
  • 📺 Stream in MPV with hardware decoding and subtitle support
  • 💾 Download episodes — single or range (e.g. episodes 1–12)
  • 🕓 Watch history — auto-saved, resume from where you left off
  • ⏭️ Continue watching — one-click next episode
  • 🎙️ Sub / Dub toggle per session or as default
  • ⚙️ Settings — configure defaults and download folder
  • 🪶 Zero dependencies — single binary, pure Go stdlib

Requirements

Required

  • Go 1.20+ — to build (go.dev/dl)
  • MPV — to stream/watch

Optional but recommended

  • yt-dlp — best download support (HLS, multi-quality)
  • ffmpeg — fallback downloader for HLS streams

Installation

Linux / macOS (automatic)

git clone https://github.com/yourname/animecli
cd animecli
chmod +x install.sh
./install.sh

The installer will:

  • Check for Go and build the binary
  • Try to install MPV automatically via your package manager
  • Install animecli to /usr/local/bin

Windows (PowerShell)

git clone https://github.com/yourname/animecli
cd animecli
powershell -ExecutionPolicy Bypass -File install.ps1

Then install MPV:

winget install mpv.net

Manual build

git clone https://github.com/yourname/animecli
cd animecli
go build -o animecli .
./animecli

Cross-compile all platforms at once

make all
# Outputs to dist/:
#   animecli-linux-amd64
#   animecli-linux-arm64
#   animecli-macos-amd64
#   animecli-macos-arm64
#   animecli-windows.exe

Usage

animecli

You'll see the main menu:

  [1] Search anime by name
  [2] Browse by genre / season
  [3] Watch history
  [4] Continue last watched
  [5] Settings
  [0] Quit

Searching

Type any anime name. Results come from AniList and show:

  • Title, score, episode count, status, season, genres

Pick a number → enter episode → choose sub/dub → watch or download.

Episode ranges (batch download)

When asked for an episode, enter a range like 1-12 to download 12 episodes in sequence.

Browse by genre

Pick a genre (Action, Romance, etc.), optionally filter by season (SPRING/SUMMER/FALL/WINTER) and year.

Config file

Saved at ~/.animecli/config.json:

{
  "history": [...],
  "default_sub": "sub",
  "download_dir": "/home/user/animecli-downloads"
}

Installing dependencies

MPV

Platform Command
Ubuntu/Debian sudo apt install mpv
Arch Linux sudo pacman -S mpv
Fedora sudo dnf install mpv
macOS brew install mpv
Windows winget install mpv.net or mpv.io

yt-dlp (optional, for downloads)

pip install yt-dlp
# or
brew install yt-dlp

ffmpeg (optional, fallback downloader)

sudo apt install ffmpeg   # Linux
brew install ffmpeg        # macOS
winget install ffmpeg      # Windows

Troubleshooting

"No streams found"
The episode may not be on AllAnime yet. Try a slightly different title spelling (Romaji vs English). Some very new episodes take a few hours to appear.

MPV not found on Windows
Install via winget install mpv.net or download from mpv.io. Make sure mpv.exe is in your PATH.

Black screen / audio only
Run mpv --hwdec=no <url> to test. Some GPU drivers cause HW decode issues.

Subtitles not showing
AllAnime includes embedded subtitles in the HLS stream for sub versions. If they don't appear, try: --sub-auto=fuzzy in your MPV config.


Legal notice

animecli accesses content via the AllAnime API, which is a third-party unofficial service. The streams it provides may include copyrighted content. This tool is for educational and personal use only. Consider supporting anime creators via Crunchyroll, Netflix, or Funimation.


Acknowledgements

  • AniList — free anime database API
  • ani-cli — the OG anime CLI, inspiration for the streaming source chain
  • AllAnime — streaming backend
  • MPV — the best open source media player

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors