Skip to content

Python-based CLI tool for generating Russian bench press workout programs

Notifications You must be signed in to change notification settings

fantonatos/russia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Russian Bench Press CLI

A Python CLI utility to generate a 6-week "Russian Bench Press" peaking program. It outputs an .ics file that can be imported into your favorite calendar application (Google Calendar, Apple Calendar, Outlook, etc.).

Features

  • Customizable Schedule: Set your workout days and times (e.g., Mon/Wed/Fri or Tue/Thu/Sat).
  • Progressive Overload: Automatically calculates weights based on your 1 Rep Max (1RM).
  • Calendar Integration: Generates a standard .ics file.

Requirements

  • Python 3.6+
  • No external dependencies for the standalone executable.

Usage

Standalone Executable (.pyz)

You can run the standalone file directly:

python3 russian_bench.pyz -1rm 100 --schedule Mon 18:00 Wed 18:00 Fri 18:00

Arguments

  • -1rm <weight>: Required. Your current 1 Rep Max (e.g., 100, 225.5).
  • --schedule <Day> <Time> <Day> <Time> <Day> <Time>: Required. The 3 days and times you want to train each week.
    • Format: Day HH:MM.
    • Example: Mon 08:00 Wed 18:30 Sat 10:00.
  • --start-date <YYYY-MM-DD>: Optional. The date to start the program (defaults to the next Monday).
  • --output <filename>: Optional. The output filename (default: program.ics).

Examples

Generate a program starting next Monday for a 120kg bencher, training MWF evenings:

python3 russian_bench.pyz -1rm 120 --schedule Mon 18:00 Wed 18:00 Fri 18:00

Generate a program starting on a specific date:

python3 russian_bench.pyz -1rm 250 --start-date 2023-11-01 --schedule Tue 06:00 Thu 06:00 Sat 09:00 --output my_bench_cycle.ics

Build Instructions

To build the standalone .pyz file:

./build.sh

This will create russian_bench.pyz in the current directory.

Development

Running Tests

To run the unit and integration tests:

  1. Install dependencies:

    pip install -r requirements.txt
  2. Run tests:

    python3 -m unittest discover tests

About

Python-based CLI tool for generating Russian bench press workout programs

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors