Skip to main content

Training Video Organizer

A CLI tool for organizing training videos and logging lift data with SQLite storage.

Features

  • Add individual lifts or bulk import sessions from JSON
  • List, update, and delete logged entries
  • Filter by date, program, exercise, weight, RIR, etc.
  • Open video files to compare lift performance across various factors
  • Rich terminal output with tables and colors
  • Automatic calculation of estimated 1RM (Bryzycki method) and total set volume for each entry
  • Analyze progress across program iterations with built-in metrics comparison

Prerequisites

  • Python 3.10+
  • uv (recommended for dependency management)

Installation

# Install dependencies
uv sync

Quick Start

# Initialize the database
tvo init -d db/training.db

# Add a single lift with video
tvo add lift --date 2026-09-30 --program "Push/Pull/Legs" \
             --iteration 1 --lift squat --weight 225 --reps 8 \
             --top-set -f /videos/squat_20260930.mp4

# List all lifts with calculated metrics
tvo list lifts

# Filter by program and iteration
tvo list lifts --program "Push/Pull/Legs" --iteration 1

# Analyze progress across iterations (est. 1RM comparison)
tvo analyze estimated_1rm

# Analyze total set volume progression
tvo analyze total_set_volume

# Open videos for top sets
tvo open --top-set -l 50

# Update a lift entry (by ID)
tvo update 42 --weight 230

# Delete an entry
tvo delete 42 --force

Calculated Views

Each lift entry automatically calculates two metrics:

Estimated 1RM (One Rep Max)

Uses the Bryzycki formula: weight × 36 / (37 - reps)

Example: A squat with 200 lbs for 5 reps → estimated 1RM of ~225 lbs.

View in list output as "est. 1RM" column, or analyze progression across iterations:

tvo analyze estimated_1rm

Total Set Volume

Measures work done: weight × reps

Example: A bench press set with 135 lbs for 8 reps → volume of 1080 lbs.

Useful for comparing program iterations and tracking overall workload:

tvo analyze total_set_volume

Configuration

Set environment variables to customize behavior:

  • TVO_DB_PATH — Override default database location
  • TVO_VIDEO_DIR — Base directory for resolving relative video paths
  • TVO_LOG_LEVEL — Set to DEBUG or INFO for verbose output

Metadata

Release files for training-vid-organizer 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for training-vid-organizer 0.3.0
File Size Uploaded Provenance
training_vid_organizer-0.3.0.tar.gz 13.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for training-vid-organizer 0.3.0
File Interpreter ABI Platform
training_vid_organizer-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 30.1 kB

Release files / training_vid_organizer-0.3.0.tar.gz

Download URL training_vid_organizer-0.3.0.tar.gz
Size 13.0 kB
Tags Source
SHA-256 checksum
How to use checksums
79dfa1ec82ae872541cbb9620bf273a644d030b24ca58204132cefa45ff4db1d
BLAKE2b-256 checksum
How to use checksums
932f1269a9a68375c8380d1a4d8624130d6c758f040aff818e2d4e0c1aa19f13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","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}

Release files / training_vid_organizer-0.3.0-py3-none-any.whl

Download URL training_vid_organizer-0.3.0-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
535ff21ce2a40d7f65cecab463fd0ba3d31ed7a047d0485cd59abd1c4f5c42d2
BLAKE2b-256 checksum
How to use checksums
c45a64f079161c2ec329023c369edac9d2036fa680c0c291e7b8bbae8c8c5171
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","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}

Security for training-vid-organizer 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page