Metadata-Version: 2.4
Name: gtktube
Version: 1.0.1
Summary: Local privacy-first Python/GTK4 YouTube player
License-Expression: GPL-3.0-only
Project-URL: Homepage, https://github.com/keredson/gtktube
Project-URL: Source, https://github.com/keredson/gtktube
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: packaging>=24.0
Requires-Dist: yt-dlp>=2025.1.15
Requires-Dist: python-mpv>=1.0.8
Dynamic: license-file

# GTKTube

<p align="center">
  <img src="https://raw.githubusercontent.com/keredson/gtktube/main/gtktube/assets/gtktube.png" alt="GTKTube icon" width="128" height="128">
</p>

GTKTube is a local privacy-first Python/GTK4 YouTube player for Linux.
It stores subscriptions and viewing history locally in SQLite, and does not use a Google account.
The feed has no algorithm. It just shows recent videos from the channels you subscribe to.

## Features

- Browse recent videos from your subscribed channels without YouTube recommendations.
- Watch without ads.
- No tracking by GTKTube.
- Search YouTube for videos and channels without signing in.
- Subscribe and unsubscribe locally; no Google account, OAuth, cookies, or account sync.
- Play videos inside the GTK app with libmpv.
- Choose playback quality and speed, including speeds up to 4x.
- Use normal playback shortcuts for play/pause, seeking, fullscreen, and speed changes.
- Keep watching while browsing with a mini-player.
- Track watch history locally, including watched time ranges rather than only a last position.
- Search and review local watch history.
- Store thumbnails on disk and app data in SQLite.

## Screenshots

### Channel Browsing

![Channel grid with mini-player](https://raw.githubusercontent.com/keredson/gtktube/main/screenshots/Screenshot%20From%202026-06-10%2012-41-20.png)

### Player

![Video player](https://raw.githubusercontent.com/keredson/gtktube/main/screenshots/Screenshot%20From%202026-06-10%2012-42-24.png)

### Queue And Mini-Player

![Channel view with queue and mini-player](https://raw.githubusercontent.com/keredson/gtktube/main/screenshots/Screenshot%20From%202026-06-10%2012-43-41.png)

## Install

```sh
pipx ensurepath
pipx install --system-site-packages gtktube
```

GTKTube also needs GTK4/PyGObject and libmpv from your Linux distribution.
If required system dependencies are missing, the app can launch a small installer helper.

## Run

GTKTube installs a desktop app entry, so you can launch it from your normal Linux app launcher.
You can also run it from a terminal:

```sh
gtktube
```

Useful startup flags:

- `gtktube --show-upgrade` opens the upgrade dialog even when GTKTube has not detected a newer version.
- `gtktube --show-deps-installer` opens the system dependency installer even when GTKTube thinks dependencies are present.

## Data Storage

GTKTube keeps its state on your machine:

- subscriptions and watch history in SQLite
- thumbnail cache under the user cache directory
- no Google account integration
- no cloud sync
- no analytics or tracking by GTKTube

## License

GTKTube is licensed under the GNU General Public License v3.0. See `LICENSE`.
