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

Uploaded Python 3

File details

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

File metadata

  • Download URL: steam_clip_tui-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 a550430da877c6798c4078cd9e5c65fc93af04ea3b5bf907fa34ed6becc9099b
MD5 c1eb9703d5868a4d47596bca950a0a0a
BLAKE2b-256 d8f4052eadf790ee83c57e23bc436be50d1f275501a82f7d6369d82117826387

See more details on using hashes here.

File details

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

File metadata

  • Download URL: steam_clip_tui-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 28.2 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 da636d069fc3ccad25db396fcdfdb98904693c42c61728c0f49fb0464cdf6b3a
MD5 b19762ca803d20d70146b18184e9a850
BLAKE2b-256 3840cf7c37a4ac8f510c3509e5963ae0c2b9a102e7cbe81cefc0ea6760821a7c

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