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

Uploaded Python 3

File details

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

File metadata

  • Download URL: mov_watch-2.3.2.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.2.tar.gz
Algorithm Hash digest
SHA256 05f17e1ad319290fa43ed5003c51aef30ec1f95ce6d186aff05883222a8317f6
MD5 e368c619dda95d45af9ac657bce4f696
BLAKE2b-256 7ffbd062b23e7c6dd7b03a66ca422be114562748d36a12ec877f65cedabd677b

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: mov_watch-2.3.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3c79a4577fdc78c19b18cb28a7af8829f26aec4294fd0f040043f624a6bd8f01
MD5 40681bfd04268dd48b4ce1fa1232efc1
BLAKE2b-256 670567610f719acfcfb4d04348eb56350237abde0f8cc6035b77f2ce3ed79058

See more details on using hashes here.

Provenance

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