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 (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.25.tar.gz (50.8 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.25-py3-none-any.whl (45.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cinnamon_cli-0.2.25.tar.gz
  • Upload date:
  • Size: 50.8 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.25.tar.gz
Algorithm Hash digest
SHA256 ae8a83d2bf3963527d14f444c32f64600ce1b27726c42976e0964910540a45ab
MD5 321aa782afe5e740af99cb6fcfdb5626
BLAKE2b-256 992a7a0d14c6e44ee1af3763258c9463d4db280df8918d55ca0ed51bae616096

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cinnamon_cli-0.2.25-py3-none-any.whl
  • Upload date:
  • Size: 45.9 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.25-py3-none-any.whl
Algorithm Hash digest
SHA256 bd8b2e965b008b9df62461943ee00b5125aad1b4664bee7a5deb32495ad84c78
MD5 396ed57e01543a33b6a44f4c953b0bee
BLAKE2b-256 e23a2f29ac3712598c7e59390684d625a5b28b7edd1b996ebf7079b0e6db7008

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