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 locationTVO_VIDEO_DIR— Base directory for resolving relative video pathsTVO_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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| training_vid_organizer-0.3.0.tar.gz | 13.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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.