Skip to main content

CLI to search TV shows, movies & anime via TMDB/AniList, scrape m3u8 links, and play in VLC/mpv

Project description

cinnamon

Watch TV shows, movies, and anime from your terminal. Search, pick a title, and it plays in mpv or VLC.

Version Python License Platform

Quick start

You'll need Python 3.10+ and either mpv or VLC.

Install

pip install https://github.com/pizza-droid/cinnamon/archive/refs/tags/v0.2.19.tar.gz
cinnamon setup

The setup wizard asks for a TMDB API key (free account), your preferred player, and a color theme.

Get a player

Please note that MacOS version has not been tested since we dont have access to a mac

Platform mpv VLC
Windows scoop install mpv or download from mpv.io videolan.org
macOS brew install mpv brew install --cask vlc
Linux apt install mpv (Debian/Ubuntu) apt install vlc
Termux pkg install mpv pkg install vlc

Watch a show or movie

cinnamon search "Breaking Bad"

Pick a title, pick an episode (for TV) or just play (for movies), and it plays. Anime is detected automatically:

cinnamon search "Chainsaw Man"

Movies work the same way — search returns both TV and movies, and you pick:

cinnamon search "Inception"
cinnamon watch --type movie --query "Inception"

Download episodes

Downloading needs yt-dlp. Install it together with cinnamon in one step:

pip install "cinnamon-cli[download]"

Or install yt-dlp on its own (any platform):

pip install yt-dlp
cinnamon search "Breaking Bad" -d -e 1-5

Commands

If you run this… …this happens
cinnamon anime <query> Search anime via AniList (no API key needed)
cinnamon search <query> Find a show, pick an episode, watch it
cinnamon watch --id 123 -s 2 -e 5 Go straight to S2E5 without menus
cinnamon play-url <url> Play any m3u8/mp4 link
cinnamon resume Continue an interrupted download
cinnamon history Show watch history and resume from the next unwatched episode
cinnamon history --clear Clear all watch history
cinnamon scrapers See available streaming sources
cinnamon install <name> Add an optional scraper (vidsrc, torrentio)
cinnamon update Check for and install the latest version
cinnamon config show View your settings

Common flags

Flag What it does
-s <N> Season number
-e <N> or -e <start-end> Episode or range (e.g. -e 1-10)
-d Download instead of streaming
--scraper <name> Force a specific scraper
--player mpv or --player vlc Choose player
-q 720p Pick quality (480p, 720p, 1080p, best, worst)
--info-only Just print the stream URL

Scrapers (streaming sources)

Built-in (work out of the box):

Name For
webstream TV shows & movies from vixsrc.to and vidlink.pro (HLS)
anime Anime from allanime.day via mp4upload

Optional (install with cinnamon install <name>):

Name Needs
vidsrc pip install "cinnamon[scrapers]" then playwright install chromium
torrentio npm install (torrent playback)
cinnamon install torrentio
cinnamon config default-scraper torrentio

Configuration

Settings are stored in ~/.config/cinnamon/config.json (Linux/macOS/Termux) or %APPDATA%/cinnamon/config.json (Windows). Change them anytime:

cinnamon config default-player mpv
cinnamon config default-scraper webstream
cinnamon config set-api-key YOUR_KEY

Notes

This project is mostly vibe coded and our lazy ass didnt even write more than 300 lines. feel free to give us feedback so we can improve this project and make it as good as possible.

inspired by ani-cli

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cinnamon_cli-0.2.22.tar.gz (49.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cinnamon_cli-0.2.22-py3-none-any.whl (44.2 kB view details)

Uploaded Python 3

File details

Details for the file cinnamon_cli-0.2.22.tar.gz.

File metadata

  • Download URL: cinnamon_cli-0.2.22.tar.gz
  • Upload date:
  • Size: 49.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cinnamon_cli-0.2.22.tar.gz
Algorithm Hash digest
SHA256 310b4101619b5dfb120b99e78b2cccc9cf0ff45b59d897474f22ac86b897a1b0
MD5 115477e91ec1c8462bcc25be768002db
BLAKE2b-256 9fd6abd4649fbe0b13653fb6bf6f143486de535770f44ac453e74f25b0a77fa8

See more details on using hashes here.

File details

Details for the file cinnamon_cli-0.2.22-py3-none-any.whl.

File metadata

  • Download URL: cinnamon_cli-0.2.22-py3-none-any.whl
  • Upload date:
  • Size: 44.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cinnamon_cli-0.2.22-py3-none-any.whl
Algorithm Hash digest
SHA256 60e5d583a165f51128a3de83e3141a62b2058a86230ae24b777c98730fe9f6f1
MD5 95e1a0ff5a10a9d4542b558a60fb8c0a
BLAKE2b-256 95194ad21c91dd9efd45f7817c58e6a8286a9aa7a242da6b6c7ae5f9d596de51

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page