Skip to content

pmiddend/myocardio

Repository files navigation

myocardio – automagically generate and display split plans

https://github.com/pmiddend/myocardio/actions/workflows/build-with-cabal.yaml/badge.svg https://github.com/pmiddend/myocardio/actions/workflows/build-with-nix.yaml/badge.svg

How does it work

myocardio is a small utility to generate exercise split plans for you. It recieves a list of exercises from you. For each exercise, you specify:

  • exercise name
  • which muscle groups are involved
  • how many repetitions you make

The tool then generates and displays an exercise plan for you that tries not to include exercises with big overlaps in muscle groups consecutively. It also prioritizes exercises that you haven’t done for some time.

The algorithm is described in this PDF file.

The input is expected in JSON format at the location $HOME/.config/myocardio/data.json and looks like this:

{
    "exercises": [
        {
            "muscles": [
                "pectoralis",
                "triceps",
                "deltoid",
                "core",
                "quadriceps",
                "hip flexor"
            ],
            "tagged": null,
            "reps": "3x10",
            "name": "Burpees",
            "last": null
        }
    ]
}

As you can see, the JSON is just a list of exercises. The format should be self-explanatory.

Screenshot

./screenshot.png

./screenshot2.png

Key bindings

KeyBinding
ttag an exercise (meaning you did it today)
jGo down a row (vim-style!)
kGo up a row
ccommit the plan (meaning you’re done exercising)
rType in a new repetition count

Installation/Usage

Just clone the repository and type:

cabal v2-run myocardio-exe