@musclemap/core
v1.0.1
Published
Headless core for MuscleMap — muscle-group types, color scales and region/visibility rules. UI-free.
Maintainers
Readme
@musclemap/core
Headless core for MuscleMap. Muscle-group
types, color scales and region/visibility rules — zero UI, usable from any
framework. The React component (@musclemap/react)
is built on top of this.
Install
npm install @musclemap/core
# or
pnpm add @musclemap/coreWhat's inside
Feed a normalized score (0–100) per muscle; the core turns it into colors and
tells you which groups belong to a given view/region.
import {
getMuscleHeatColor,
getColorScaleCss,
getVisibleMuscleGroups,
} from "@musclemap/core";
import type { MuscleMapValues } from "@musclemap/core";
// Continuous heatmap color for a score (drives the body fills).
getMuscleHeatColor(72, "LOAD"); // "#f9a..." smooth interpolation
// Matching CSS gradient for a legend (same stops → never drifts apart).
getColorScaleCss("LOAD", "90deg"); // "linear-gradient(90deg, …)"
// Which muscle groups to render for a view + region.
getVisibleMuscleGroups("FRONT", "UPPER_BODY"); // ["CHEST", "SHOULDERS_FRONT", …]Color models
LOAD · FREQUENCY · BALANCE · RECOVERY_RISK — each a continuous scale via
getMuscleHeatColor / getColorScaleStops, with a stepped variant
getMuscleColor for discrete buckets.
Monochrome scale
Use a single brand color from a neutral base at score 0 to the full color at
score 100. Colors accept #RGB or #RRGGBB.
import {
DEFAULT_MONOCHROME_BASE,
getMonochromeColor,
getMonochromeScaleCss,
getMonochromeScaleStops,
} from "@musclemap/core";
getMonochromeColor(50, "#2f7bff");
getMonochromeScaleCss("#2f7bff");
getMonochromeScaleStops("#2f7bff", DEFAULT_MONOCHROME_BASE);Key exports
getMuscleHeatColor,getColorScaleCss,getColorScaleStops,getMuscleColorgetMonochromeColor,getMonochromeScaleCss,getMonochromeScaleStops,DEFAULT_MONOCHROME_BASEgetVisibleMuscleGroups,MUSCLE_GROUP_META,ALL_MUSCLE_GROUPS- Types:
MuscleGroup,MuscleMapValue,MuscleMapValues,MuscleColorModel,MuscleMapView,MuscleMapRegion,MuscleMapSex, …
Full docs: https://github.com/Jsplice/MuscleMap
License
MIT
