Skip to main content

Structured Workout Format (SWF)

SWF is a JSON format for describing structured endurance workouts. Define a workout once in SWF, then export to Garmin, Intervals.icu, or other platforms.

uv add structured-workout-format
from structured_workout_format import Workout, Step, Repeat, duration, power, to_garmin

workout = Workout(
    sport="cycling",
    content=[
        Repeat(count=5, content=[
            Step(volume=duration(240), intensity=power(250)),
            Step(effort="rest", volume=duration(120)),
        ]),
    ],
)

print(to_garmin(workout))

Full documentation, specification, and examples at structuredworkoutformat.dev.

Source code and conformance suite on GitHub.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

structured_workout_format-0.6.1.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

structured_workout_format-0.6.1-py3-none-any.whl (33.2 kB view details)

Uploaded Python 3

File details

Details for the file structured_workout_format-0.6.1.tar.gz.

File metadata

File hashes

Hashes for structured_workout_format-0.6.1.tar.gz
Algorithm Hash digest
SHA256 466b619a7c44ef8ad350d1d3652c3ae403627092764076327379d4a5a8860637
MD5 781074ccbe5873117dae6e4582020efa
BLAKE2b-256 3ecaeecf12eb6274576d283c7aadae893bd69ef0dbced39191e4a1b028ee8680

See more details on using hashes here.

File details

Details for the file structured_workout_format-0.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for structured_workout_format-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c60e68445c63f2df5c455bd71c4a5d983e24c8c8c32114c92b780b84aa85d4e8
MD5 420cf169b343b5107801bd43637cbe4b
BLAKE2b-256 02649950a0fab37cde31039dd231d2eb89e5dd00db396d51a007c12220fefd54

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page