Skip to main content

Python package for health and fitness calculations using validated, research-backed equations

Project description

Fitness Tools banner — Python Package and Agent Skills

Python Package · 3 Agent Skills

PyPI version Python versions License Claude Code Plugin GitHub Stars CI


Fitness Tools is a Python package that facilitates healthy lifestyles using validated, research-backed equations. Whether you're a wellness professional, veteran gym rat, or just starting your fitness journey, this package will benefit you.

Features

  • Body Composition — Estimate body fat percentage from skinfold measurements using Durnin-Womersley and Jackson-Pollock (3/4/7-site) equations
  • Rep Max Estimation — Convert between weight and rep ranges using a validated percentage-of-1RM table
  • Macronutrient Planning — Calculate daily calorie ranges and macro distributions by body type, activity level, and goal

Quick Start

No third-party dependencies. Python 3.11+ only.

pip install fitness-tools

Body Composition

from fitness_tools import DurninWomersley, Sex

calc = DurninWomersley(30, Sex.MALE, (12, 8, 15, 10))
density = calc.body_density()
body_fat = calc.siri(density)

Rep Max Estimation

from fitness_tools import RM_Estimator

est = RM_Estimator(current_weight=185.0, current_reps=8, desired_reps=1)
result = est.estimate_weight(base=2.5)

Macronutrient Planning

from fitness_tools import MakeMeal, BodyType, ActivityLevel, Goal

meal = MakeMeal(
    weight=150,
    body_type=BodyType.MESOMORPH,
    activity_level=ActivityLevel.VERY,
    goal=Goal.MAINTENANCE,
)
daily = meal.daily_requirements()
per_meal = meal.make_meal(number_meals=5)

API

All public types are importable from fitness_tools:

Category Classes
Body Composition DurninWomersley, JacksonPollock3Site, JacksonPollock4Site, JacksonPollock7Site
Exercise RM_Estimator
Meal Planning MakeMeal
Enums Sex, BodyType, ActivityLevel, Goal
Data Models BodyCompositionResult, MacroTargets, RepEstimate

Agent Skills

This package includes 3 skills for AI-assisted fitness calculations:

Skill Description
body-composition Skinfold-based body fat assessment
rep-max One-rep max estimation via validated percentage table
meal-planner Macronutrient planning by body type

Install

Claude Code plugin — run inside a Claude Code session:

/plugin marketplace add Jeffallan/Fitness-Tools
/plugin install fitness-tools@fitness-tools

skills.sh — from any terminal:

npx skills add Jeffallan/Fitness-Tools

How To Contribute

All skill levels are welcome and our maintainers will help you in whatever way we can.

License

This project is licensed under the Apache 2.0 License.

Project details


Download files

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

Source Distribution

fitness_tools-1.0.1.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

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

fitness_tools-1.0.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file fitness_tools-1.0.1.tar.gz.

File metadata

  • Download URL: fitness_tools-1.0.1.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fitness_tools-1.0.1.tar.gz
Algorithm Hash digest
SHA256 0d6a2b54da66a6f863127a79cb6be55de3a6f5d88f1769d021bad70d9f58959c
MD5 952e7ce5e736beca17d30420a5c76cfc
BLAKE2b-256 13378d16b88a0d564c870e8fab96fe716fac8d6700f37500ffc8578aebac8d07

See more details on using hashes here.

Provenance

The following attestation bundles were made for fitness_tools-1.0.1.tar.gz:

Publisher: release.yml on Jeffallan/Fitness-Tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fitness_tools-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: fitness_tools-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fitness_tools-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 accbdbd238914f18fbbefe5147254e3bf70d32068123dc0f43adefb64f81b05d
MD5 1aed7514847a8c674e03b8225f849571
BLAKE2b-256 04d64a1e56740bb75c91965d5b268eac48659b19f63b216b10cfe0ba2fb18c8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for fitness_tools-1.0.1-py3-none-any.whl:

Publisher: release.yml on Jeffallan/Fitness-Tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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