What Are the Media Licensing Terms for the Exercise Dataset?

The exercise dataset operates under a dual-licensing model: MIT License for all source code and JSON data, while all visual media (thumbnails and GIFs) falls under a separate Gym visual media license requiring specific attribution and size restrictions.

The hasaneyldrm/exercises-dataset repository provides a structured collection of fitness exercises with accompanying visual assets, but understanding the media licensing terms is essential before production use. While the codebase and data schema enjoy permissive open-source terms, the image and animation files are governed by third-party commercial restrictions that impose strict conditions on redistribution and display.

Dual Licensing Structure

The repository explicitly splits licensing coverage between software/data components and visual media assets. This distinction is critical for compliance when building applications that consume the dataset.

MIT License for Code and JSON Data

All source code, HTML tooling, the JSON data file (data/exercises.json), the JSON schema (data/exercises.schema.json), and documentation are licensed under the MIT License. This permits free use, modification, and redistribution provided you include the original copyright notice and permission notice in all copies. The full MIT terms are located in the LICENSE file at the repository root.

Gym Visual Media License for Images and GIFs

All files within the images/ and videos/ directories—including the 1,324 exercise thumbnails and GIF animations—are explicitly excluded from the MIT License. According to lines 27-38 of the LICENSE file, these assets are licensed separately under the Gym visual media licence. This commercial license requires written permission from Gym visual for any use beyond the specific terms granted in the repository.

Key Restrictions for Media Usage

When utilizing the exercise media assets, you must adhere to the following conditions specified in NOTICE.md and the media exception clause:

  • Resolution Limit: Media may only be distributed at 180 × 180 pixels. Redistributing the files at higher resolutions violates the license terms.
  • Mandatory Attribution: Every display of the media must include the attribution: © Gym visual — https://gymvisual.com/.
  • Terms Compliance: Use is governed by Gym visual’s Terms & Conditions of Use (https://gymvisual.com/content/3-terms-and-conditions-of-use).
  • No Clone Rights: Simply cloning the repository does not grant additional usage rights. You must obtain your own license from Gym visual if you require broader usage permissions.

Implementing Compliance in Code

The dataset provides the required attribution metadata within the JSON structure, enabling programmatic compliance checks.

Loading Attribution Data in Python

Each exercise object in data/exercises.json includes an attribution field that must be preserved in your application:

import json

# Load the full dataset

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

# Access media paths and required attribution

ex = exercises[0]
print(f"Exercise: {ex['name']}")
print(f"Image: {ex['image']}")
print(f"GIF: {ex['gif_url']}")
print(f"Required Attribution: {ex['attribution']}")

# Output: © Gym visual — https://gymvisual.com/

Rendering Media with Attribution in HTML

When displaying exercise thumbnails in web interfaces, you must include the attribution text adjacent to the media:

<div class="exercise-card">
  <img src="images/0001-2gPfomN.jpg" 
       alt="3/4 sit-up" 
       width="180" 
       height="180" />
  <p class="attribution">
    © Gym visual — <a href="https://gymvisual.com/">gymvisual.com</a>
  </p>
</div>
.attribution { 
  font-size: 0.8rem; 
  color: #555; 
  margin-top: 4px; 
}

Validating Compliance in Node.js

You can verify that your dataset usage maintains the required attribution before deployment:

const fs = require('fs');

const REQUIRED_ATTRIBUTION = '© Gym visual — https://gymvisual.com/';
const data = JSON.parse(fs.readFileSync('data/exercises.json', 'utf8'));

let violations = 0;

for (const exercise of data) {
  if (exercise.attribution !== REQUIRED_ATTRIBUTION) {
    console.warn(`License violation: ${exercise.id} has incorrect attribution`);
    violations++;
  }
}

if (violations === 0) {
  console.log('All media entries properly attributed.');
}

Summary

  • The MIT License covers only the code, JSON data structure, and documentation in hasaneyldrm/exercises-dataset.
  • Visual media (all files in images/ and videos/) requires separate licensing from Gym visual and is not open source.
  • Media files must be distributed at 180 × 180 px resolution only.
  • Attribution (© Gym visual — https://gymvisual.com/) is mandatory for every use of the media assets.
  • The attribution field in data/exercises.json provides the exact string required for compliance.

Frequently Asked Questions

Can I use the exercise images commercially?

No. The repository's MIT license does not grant commercial usage rights for the media assets. According to NOTICE.md, any commercial application requires obtaining a separate license directly from Gym visual and complying with their Terms & Conditions of Use. Cloning the repository provides no additional rights beyond the specific 180×180 pixel display permission.

Does the MIT license cover the exercise GIFs and thumbnails?

No. Lines 27-38 of the LICENSE file explicitly state that the MIT terms do not apply to media files. The JSON data and source code are MIT-licensed, but all visual assets in the images/ and videos/ directories fall under the separate Gym visual media license.

What attribution is required when displaying exercise media?

Every instance of the image or GIF assets must display the exact attribution: © Gym visual — https://gymvisual.com/. This string is provided in the attribution field of each exercise record in data/exercises.json and must be visible in your application interface whenever the associated media appears.

Where are the full media licensing terms documented?

The complete media licensing terms, attribution requirements, and usage restrictions are documented in NOTICE.md at the repository root. The LICENSE file contains the MIT terms for the code alongside the media exception clause (lines 27-38) that references the separate Gym visual license.

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 →