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.3.1.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.3.1-py3-none-any.whl (56.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mov_watch-2.3.1.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.3.1.tar.gz
Algorithm Hash digest
SHA256 ea38413a9e459ce2beed34fa24c3f81f3fcb20a167e546902a43457450e2688b
MD5 bcd351f71ad3478b5cfc94b498c1ef6b
BLAKE2b-256 b7b04f807d82e00e12438a5c7587d35cfcc1e9ce371fa485c41472803a768f7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for mov_watch-2.3.1.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.3.1-py3-none-any.whl.

File metadata

  • Download URL: mov_watch-2.3.1-py3-none-any.whl
  • Upload date:
  • Size: 56.5 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.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1b2b6dbfbf276f572e0486c3c6baa07bb87dfdd0694698759055234c706813a1
MD5 1dca879085660fc6091c05c805e57ac0
BLAKE2b-256 845551899ecb0fc04eeb468e98782f356e6b198b42b8f7f1a1448d36722b7f85

See more details on using hashes here.

Provenance

The following attestation bundles were made for mov_watch-2.3.1-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