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 cinnamon-cli
cinnamon setup

The setup wizard asks for a TMDB API key (Create a free account here), the api key is used for show and movie information.

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"
cinnamon search "Inception"

For Anime you can run (Works even if you dont have an api key):

cinnamon anime "Chainsaw Man"

By default you'll be asked whether to watch sub or dub. Skip the prompt with -sub / -dub:

cinnamon anime "Chainsaw Man" --dub
cinnamon anime "Frieren" --sub

you can also run it like this:

cinnamon Inception
cinnamon Breaking bad
cinnamon chainsaw man

Download episodes

Downloading needs yt-dlp.

pip install yt-dlp

Now you can run:

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)
--sub Prefer subtitled audio (skips the translation prompt)
--dub Prefer dubbed audio (skips the translation prompt)
--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.28.tar.gz (52.3 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.28-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cinnamon_cli-0.2.28.tar.gz
  • Upload date:
  • Size: 52.3 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.28.tar.gz
Algorithm Hash digest
SHA256 26e20d75e8bfacf93035dd4c2f9154b60bd932e8176d5cb4034428e22ed6ecd7
MD5 b5cf5a522790cf2cae797827fb31f03b
BLAKE2b-256 f5bbecbaafad19076a32b87e7c9b2d34b12fca5339d78dfc1f2a12f94014da05

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cinnamon_cli-0.2.28-py3-none-any.whl
  • Upload date:
  • Size: 47.3 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.28-py3-none-any.whl
Algorithm Hash digest
SHA256 8920db8df52114a5bf5fb2bd4d83177e931759493c3742b3d4ecbe8b883a8942
MD5 2e71a8b5c067ade992c3928b99ae100b
BLAKE2b-256 25b64a901b470627945bdc0ae60ea45444d6310f1b48d74fc277b7d9b03ebf04

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