Fitness-Tools
<p align="center">
<img src="https://capsule-render.vercel.app/api?type=waving&color=0:03A9F4,100:FFB300&height=200§ion=header&text=Fitness%20Tools&fontSize=80&fontColor=ffffff&animation=fadeIn&fontAlignY=35&desc=Python%20Package%20%2B%20Agent%20Skills%20for%20Health%20and%20Performance&descSize=20&descAlignY=55" width="100%" alt="Fitness Tools banner: Python Package and Agent Skills" />
</p>
<p align="center">
Python Package · <!-- SKILL_COUNT -->3<!-- /SKILL_COUNT --> Agent Skills
</p>
<p align="center">
<a href="https://pypi.org/project/fitness-tools/"><img src="https://img.shields.io/pypi/v/fitness-tools?style=for-the-badge&color=blue" alt="PyPI version" /></a>
<a href="https://pypi.org/project/fitness-tools/"><img src="https://img.shields.io/pypi/pyversions/fitness-tools?style=for-the-badge" alt="Python versions" /></a>
<a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-green.svg?style=for-the-badge" alt="License" /></a>
<a href="https://github.com/Jeffallan/Fitness-Tools"><img src="https://img.shields.io/badge/Claude_Code-Plugin-purple.svg?style=for-the-badge" alt="Claude Code Plugin" /></a>
<a href="https://github.com/Jeffallan/Fitness-Tools/stargazers"><img src="https://img.shields.io/github/stars/Jeffallan/Fitness-Tools?style=for-the-badge&color=yellow" alt="GitHub Stars" /></a>
<a href="https://github.com/Jeffallan/Fitness-Tools/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/Jeffallan/Fitness-Tools/ci.yml?branch=master&style=for-the-badge&label=CI" alt="CI" /></a>
</p>
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
- Read the contributing guidelines
- Check the changelog to see where this project has been
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.