.. image:: https://badge.fury.io/py/streprogen.svg :target: https://pypi.org/project/streprogen/ :alt: PyPi
.. image:: https://readthedocs.org/projects/streprogen/badge/?version=latest :target: http://streprogen.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status
.. image:: https://github.com/tommyod/streprogen/workflows/Python%20CI/badge.svg?branch=master
:alt: Test Status
Install locally using pip install streprogen
, or run live notebooks online.
If you don't have Python installed, you can run the code in your browser.
Learn how to make strength training programs
Essential Features <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Essential%20features.ipynb>
_Intermediate Features <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Intermediate%20features.ipynb>
_Advanced Features <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Advanced%20features.ipynb>
_Custom optimization <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Custom%20optimization.ipynb>
_Example strength training program library
Example - Beginner 5x5 <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Beginner%205x5.ipynb>
_Example - Beginner 5x5 modified <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Beginner%205x5%20modified.ipynb>
_Example - 3 day full body <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/3%20day%20full%20body.ipynb>
_Example - 3 day split with periodization <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/3%20day%20split.ipynb>
_Example - Block periodization <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Block%20periodization.ipynb>
_Check out the example PDF output <https://github.com/tommyod/streprogen/blob/master/docs/examples/3DaySplitWithPeriodization.pdf>
_.
Multi-day meal planning
Meal Planning <https://colab.research.google.com/github/tommyod/streprogen/blob/master/docs/examples/Meal%20planning.ipynb>
_Instructions for live code:
Click "Runtime", then "Run all".
To download a saved file, click on the arrow on the top left, left click the file and "Download".
A downloaded .html
file can be printed from your local browser.
Streprogen (short for stre\ ngth pro\ gram gen\ erator) is a Python_ 3.6+ package which allows the user to easily create dynamic, flexible strength training programs. The main features are:
.txt
, .html
or .tex
files.
Print it and bring it to the gym... image:: https://raw.githubusercontent.com/tommyod/streprogen/master/docs/examples/streprogen_overview.png
Here's how to install the software on your local machine.
(1) Download Anaconda distribution of Python 3.x from the Anaconda Website.
(2) Install streprogen
from PyPI.
(a) **Windows**: Open the Anaconda prompt from the start menu and run
``pip install streprogen``.
(b) **Linux**: Open the terminal and run
``pip install streprogen``.
(3) Open a Python Editor (such as Spyder, which comes with Anaconda_). (4) Copy the example below and run it to get started.
.. _Python: http://www.python.org/ .. _Anaconda: https://www.continuum.io/downloads .. _PyPI: https://pypi.org/project/streprogen/
.. code-block:: python
from streprogen import Program
# Create an 8-week program, rounding every exercise to nearest unit og 5kg
program = Program("My first program!", duration=8, units="kg", round_to=5)
with program.Day("Day A"):
program.DynamicExercise("Bench press", start_weight=80, min_reps=3, max_reps=8)
program.DynamicExercise("Squats", start_weight=100, min_reps=3, max_reps=8)
with program.Day("Day B"):
program.DynamicExercise("Deadlifts", start_weight=100, min_reps=2, max_reps=7)
program.StaticExercise("Curls", "3 x 10 @ 18kg")
# Render the program, then print it
program.render()
print(program)
.. code-block::
----------------------------------------------------------------
Program: My first program!
Program parameters
duration: 8
reps_per_exercise: 25
intensity: 83
units: kg
----------------------------------------------------------------
Exercise information
Day A
Bench press 80kg -> 89.6kg
reps: [3, 8] weekly inc.: 1.5%
Squats 100kg -> 112kg
reps: [3, 8] weekly inc.: 1.5%
Day B
Deadlifts 100kg -> 112kg
reps: [2, 7] weekly inc.: 1.5%
Curls 3 x 10 @ 18kg
----------------------------------------------------------------
Program
Week 1
Day A
Bench press 8 x 60kg 7 x 65kg 7 x 65kg 7 x 65kg
Squats 8 x 75kg 7 x 80kg 7 x 80kg 7 x 80kg
Day B
Deadlifts 7 x 80kg 7 x 80kg 6 x 80kg 6 x 80kg 5 x 85kg
Curls 3 x 10 @ 18kg
Week 2
Day A
Bench press 7 x 65kg 7 x 65kg 6 x 65kg 5 x 70kg 5 x 70kg
Squats 7 x 80kg 7 x 80kg 6 x 85kg 5 x 85kg 5 x 85kg
Day B
Deadlifts 7 x 80kg 7 x 80kg 6 x 85kg 5 x 85kg 5 x 85kg
Curls 3 x 10 @ 18kg
Week 3
...
...