Available Exercise Categories in the Instagit Exercises Dataset

The hasaneyldrm/exercises-dataset contains ten distinct exercise categories: back, cardio, chest, lower arms, lower legs, neck, shoulders, upper arms, upper legs, and waist.

The hasaneyldrm/exercises-dataset repository (also referred to as the Instagit exercises dataset) organizes fitness movements by anatomical focus. Each exercise record in data/exercises.json includes a mandatory category field that assigns the movement to one of ten body-part classifications. Understanding these available exercise categories enables precise filtering for workout applications and ensures data integrity when processing the dataset.

Complete List of Available Exercise Categories

The dataset taxonomy enumerates ten primary body-part classifications. By scanning data/exercises.json, you can identify where each category first appears in the source data:

Category First Appearance
back Line 512
cardio Line 3706
chest Line 817
lower arms Line 7678
lower legs Line 614
neck Line 113002
shoulders Line 5797
upper arms Line 3401
upper legs Line 309
waist Line 5

These ten values represent the complete枚举 of exercise categories available in the repository. Each entry in the JSON array contains a string value matching one of these categories exactly.

Dataset Schema and Structure

The categorical taxonomy is enforced through schema validation defined in data/exercises.schema.json. This JSON Schema specifies the category property as a required string field, guaranteeing that every exercise object in data/exercises.json includes a valid body-part classification. The schema prevents null values and ensures consistent terminology across all entries, with categories ranging from localized muscle groups like "lower arms" to systemic classifications like "cardio".

How to Extract Categories Programmatically

You can retrieve the complete list of available exercise categories using Python by loading the JSON file and extracting unique values from the category field:

import json
from pathlib import Path

DATA_PATH = Path(__file__).parent / "data" / "exercises.json"

with DATA_PATH.open(encoding="utf-8") as f:
    exercises = json.load(f)

categories = sorted({ex["category"] for ex in exercises})
print("Available categories:")
for cat in categories:
    print("-", cat)

This script reads data/exercises.json, uses a set comprehension to collect unique category strings, and outputs them in alphabetical order. This approach validates that exactly ten categories exist in the dataset and provides a runtime-verified list for downstream applications.

Summary

  • The hasaneyldrm/exercises-dataset defines exactly ten exercise categories: back, cardio, chest, lower arms, lower legs, neck, shoulders, upper arms, upper legs, and waist.
  • Category values are stored in the category field of each exercise object within data/exercises.json.
  • The data/exercises.schema.json file enforces these categories as required properties, ensuring complete data coverage.
  • Use Python's json module with set operations to programmatically extract and verify the available exercise categories against the source data.

Frequently Asked Questions

How many exercise categories are available in the dataset?

The dataset contains exactly ten exercise categories. These cover major body parts including back, chest, shoulders, upper and lower arms, upper and lower legs, waist, neck, and a dedicated cardio category for cardiovascular exercises.

Where are the exercise categories defined in the repository?

Exercise categories are assigned within individual exercise records in data/exercises.json, specifically in the category field of each JSON object. The permissible values are constrained by data/exercises.schema.json, which defines the field as a required string property in the JSON Schema specification.

Is the category field required for every exercise entry?

Yes, according to the schema definition in data/exercises.schema.json, the category field is a required property for every exercise object. This requirement ensures that no exercise entries exist without a valid body-part classification, maintaining dataset completeness and searchability.

How can I filter exercises by category using Python?

Load data/exercises.json into a Python list, then apply a list comprehension to filter by the category key. For example, [ex for ex in exercises if ex["category"] == "back"] returns only back-focused exercises, allowing you to subset the dataset by any of the ten available exercise categories.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →