Skip to content

README


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.

  • 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

No third-party dependencies. Python 3.11+ only.

Terminal window
pip install fitness-tools
from fitness_tools import DurninWomersley, Sex
calc = DurninWomersley(30, Sex.MALE, (12, 8, 15, 10))
density = calc.body_density()
body_fat = calc.siri(density)
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)
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)

All public types are importable from fitness_tools:

CategoryClasses
Body CompositionDurninWomersley, JacksonPollock3Site, JacksonPollock4Site, JacksonPollock7Site
ExerciseRM_Estimator
Meal PlanningMakeMeal
EnumsSex, BodyType, ActivityLevel, Goal
Data ModelsBodyCompositionResult, MacroTargets, RepEstimate

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

SkillDescription
body-compositionSkinfold-based body fat assessment
rep-maxOne-rep max estimation via validated percentage table
meal-plannerMacronutrient planning by body type

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:

Terminal window
npx skills add Jeffallan/Fitness-Tools

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

This project is licensed under the Apache 2.0 License.