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, ghostty, foot, 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
h / l Switch focus left / right
j / k Move cursor down / up
g Focus game list
e Export selected clip
/ Search games / Filter clips by date
? 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]
show_clip_preview = true

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.5.tar.gz (20.2 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.5-py3-none-any.whl (30.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: steam_clip_tui-0.1.5.tar.gz
  • Upload date:
  • Size: 20.2 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.5.tar.gz
Algorithm Hash digest
SHA256 b4b7cd042396da5e28eae64428ece5f83eba7a5a71bcf4d63595a0f9a3842377
MD5 dcc7ab628adc305746227abb8c2d9f03
BLAKE2b-256 818619f7f04f9a9b82774735ac2b189270a4fee536b98df1528a5047d4fadf95

See more details on using hashes here.

File details

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

File metadata

  • Download URL: steam_clip_tui-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 30.3 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 aee1bf6aeb2c3c8a1c4a8a3d0890719ee98985ef31cb44166e6db9b112a39868
MD5 a3ca755d21fa00b7c4802bcbbd30c5c0
BLAKE2b-256 32f66d4e50f6ee63366a23551418a139efee01c1e45ebf3f8f497f1b9e508bdd

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