Skip to main content

Terminal-based movie and TV show streaming

Project description

📑 Navigation

InstallationFeaturesHow to UseKeyboard ShortcutsConfigurationCreditsLicense


Terminal-based movie and TV show streaming with Arabic/English subtitles





📦 Installation

Requirements

  • Python 3.8+
  • MPV (media player)
  • ffmpeg

Method 1: pip

pip install mov-watch
playwright install chromium    # one-time browser download for stream extraction

Launch:

mov-watch
# or
mw

Method 2: Arch Linux (AUR)

Stable release:

yay -S mov-watch

Git version (always latest commit):

yay -S mov-watch-git

Method 3: From Source

git clone https://github.com/leoallday/mov-watch.git
cd mov-watch
pip install -r requirements.txt
playwright install chromium
python main.py

🎯 What Can You Do?

Streaming & Playback

  • Subtitle Support: Automatically fetches Arabic and English subtitles
  • Resume from History: Pick up where you left off

Personal Library

  • Favorites System: Bookmark movies and TV shows
  • Episode Tracking: Remembers your progress

Interface & Experience

  • Rich TUI: Beautiful terminal interface built with Rich library
  • Color Themes: Choose from various color schemes
  • Discord Rich Presence: Show what you're watching on Discord
  • Smooth Navigation: Intuitive keyboard controls

Technical Features

  • Zero Ads: Clean streaming experience
  • Automatic Updates: Built-in version checker
  • MPV/VLC Support: Choose your preferred player
  • Cross-platform: Works on Linux, macOS, and Windows

🎮 How to Use

  1. Launch: Run mov-watch or mw
  2. Search: Type a movie or show name
  3. Select: Pick from search results
  4. Watch: MPV launches and starts streaming

Quick mode:

mw -i "The Matrix"

⌨️ Keyboard Shortcuts

Key What it Does
↑ / ↓ Navigate through lists
Enter Select/Confirm choice
G Jump to an episode number
B Go back
Q / Esc Quit

⚙️ Configuration

Settings stored in ~/.mov-watch/database/config.json.

Access the settings menu from the main screen to customize:

  • Player: MPV or VLC
  • Auto-next Episode: Toggle automatic continuation
  • Discord Rich Presence: Toggle Discord integration
  • Theme: Pick from various color schemes
  • Analytics: Opt-in/out of anonymous usage stats

🙏 Credits

Created and maintained by leoallday


📄 License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for the full legal text.


⚠️ Important Notice

[!CAUTION] By using this software you understand:

  • Anonymous usage statistics are collected (can be disabled in settings)
  • The project is licensed under GNU General Public License v3.0
  • We do not host any content; all streams are from third-party sources


Made with ❤️ by leoallday

⭐ Star this repo | 🐛 Report bugs | 💬 Discussions

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

mov_watch-2.2.0.tar.gz (52.8 kB view details)

Uploaded Source

Built Distribution

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

mov_watch-2.2.0-py3-none-any.whl (56.4 kB view details)

Uploaded Python 3

File details

Details for the file mov_watch-2.2.0.tar.gz.

File metadata

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

File hashes

Hashes for mov_watch-2.2.0.tar.gz
Algorithm Hash digest
SHA256 2f7f59b42f70d0c2b9ea54d038330f2c0e4557dc39ecde6835d0ca2a01331014
MD5 00c00f74027ddbe28f6a5d6107b89c30
BLAKE2b-256 c8bd72ad17f5abcfe2af67a125b127500c8461fd026fefe79d296b633ecb8512

See more details on using hashes here.

Provenance

The following attestation bundles were made for mov_watch-2.2.0.tar.gz:

Publisher: publish-pypi.yml on leoallday/mov-watch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mov_watch-2.2.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for mov_watch-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 94a34b22713b1457e1e36172cbd954af67b4a6bbb1106e19923f2d9781002096
MD5 d76ea524d9862d3fe29c3ff500e99dbf
BLAKE2b-256 7cc0d27bfa59723434eecf84668f0026f4a48c2c759ec0cb28430f8c78cc4427

See more details on using hashes here.

Provenance

The following attestation bundles were made for mov_watch-2.2.0-py3-none-any.whl:

Publisher: publish-pypi.yml on leoallday/mov-watch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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