Skip to main content

TUI for browsing and exporting Steam game recording clips

Project description

Steam Clip TUI

A terminal application for browsing and exporting Steam game recording clips, built with Textual.

Features

  • Browse clips — automatically scans your Steam userdata directory, organizes clips by game
  • Preview — inline thumbnail preview in terminals that support image protocols (kitty, Sixel, iTerm2, WezTerm)
  • Export to MP4 — join DASH segments into a single MP4 via ffmpeg, with real-time progress tracking
  • Customizable output — choose video codec (copy/H.264/H.265/VideoToolbox), resolution (source/1080p/720p/480p), bitrate, and filename template
  • Game name resolution — resolves Steam app IDs to human-readable names via appmanifest files and the Steam Store API, with a local disk cache

Requirements

  • Python 3.11+
  • ffmpeg (must be on PATH)
  • Steam with game recording enabled (clips stored in userdata/)

Installation

# Run directly without installing (recommended)
uvx steam-clip-tui

# Or install globally with uv
uv tool install steam-clip-tui

# Or install with pipx
pipx install steam-clip-tui

# Or install with pip
pip install steam-clip-tui

Usage

steam-clip-tui

Keyboard shortcuts

Key Action
j / Move down
k / Move up
g Focus game list
Tab Cycle focus between panes
Space Toggle clip selection
e Export selected clip
? Show help
q Quit

Configuration

On first run, a config file is created at your platform's config directory (e.g. ~/.config/steam-clip-tui/config.toml on Linux, ~/Library/Application Support/steam-clip-tui/config.toml on macOS). See config.default.toml for all available options.

Key settings:

[export]
output_dir = "~/Movies/SteamClips"
video_codec = "copy"        # copy | libx264 | libx265 | h264_videotoolbox | hevc_videotoolbox
resolution = "source"       # source | 1080p | 720p | 480p
filename_template = "{game}/{date}_{time}.{ext}"

[ui]
enable_images = true

License

WTFPL

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

steam_clip_tui-0.1.1.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

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

steam_clip_tui-0.1.1-py3-none-any.whl (28.1 kB view details)

Uploaded Python 3

File details

Details for the file steam_clip_tui-0.1.1.tar.gz.

File metadata

  • Download URL: steam_clip_tui-0.1.1.tar.gz
  • Upload date:
  • Size: 17.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for steam_clip_tui-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d74993edf51fdb2bc5d7f5b8216a1e5b9dfe1f3d1de402e63a40e4bad2f466cf
MD5 ad88f927142328c40ed4958ba1e17295
BLAKE2b-256 4bdfde03af21d7c9fc391c552ff8aa82e49e93eef12a1f00d1382bee3155946b

See more details on using hashes here.

File details

Details for the file steam_clip_tui-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: steam_clip_tui-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for steam_clip_tui-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9b2ed56ed2c302a975355986ad248daf99a64c6364641aaec62f66bc0d47d223
MD5 cecb9f1caca138111f344b256f80e6ea
BLAKE2b-256 420d718dc2433e311ab6960cedfa35e6ddbb00660ac102250c26043fdf44daba

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