# How to Handle Media Attribution for Commercial Use of the Exercises Dataset

> Learn how to handle media attribution for commercial use of the exercises dataset. Comply with MIT license, Gym visual attribution, and commercial licensing for images and GIFs.

- Repository: [Hasan Emir Yıldırım/exercises-dataset](https://github.com/hasaneyldrm/exercises-dataset)
- Tags: best-practices
- Published: 2026-07-30

---

**To use the Exercises Dataset commercially, you must retain the MIT license for the JSON data, display the mandatory © Gym visual attribution for all media, and obtain a separate commercial license from Gym visual for any commercial redistribution of the thumbnail images and GIFs.**

The `hasaneyldrm/exercises-dataset` repository splits its assets into two distinct legal categories: the exercise metadata falls under a permissive open-source license, while the visual media requires specific attribution and additional licensing for commercial applications. Understanding this dual-structure is essential before integrating the data into profit-generating products.

## Understanding the Dual-License Structure in exercises-dataset

The repository organizes content into code-like data and copyrighted visual assets, each governed by different terms.

### MIT-Licensed Data Components

The **exercise data**—including the multilingual instructions, JSON schema, and metadata—resides in [`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json) and [`data/exercises.schema.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.schema.json). These files are released under the **MIT License** as documented in the root `LICENSE` file. You may freely use, modify, and distribute this portion in commercial projects provided you retain the original copyright notice and permission notice.

### Gym visual Media Terms and Conditions

The **exercise media**—specifically the 180 × 180 thumbnails and GIF animations stored in the `images/` and `videos/` directories—is owned by **Gym visual** and redistributed with explicit permission under stricter terms found in [`NOTICE.md`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/NOTICE.md):

- **Attribution required**: Every copy must include the line `© Gym visual — https://gymvisual.com/`. This string is programmatically accessible in each record’s `attribution` field.
- **Resolution limit**: Only the 180 × 180 versions may be used; upscaling or altering dimensions violates the redistribution agreement.
- **Commercial reuse**: The repository’s permission does **not** grant commercial rights. You must consult Gym visual’s Terms & Conditions of Use and obtain a separate commercial license for any for-profit use.

## Steps to Ensure Proper Media Attribution for Commercial Projects

Follow this checklist to maintain compliance when building commercial applications with the dataset:

1. **Review Gym visual’s Terms & Conditions** at `https://gymvisual.com/content/3-terms-and-conditions-of-use` to determine if your intended use falls under the existing permission or requires a new license.
2. **Contact Gym visual** to negotiate a commercial license if your project generates revenue or falls outside standard redistribution terms.
3. **Preserve the `attribution` field** unchanged when processing [`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json); this field contains the legally required credit string.
4. **Serve media at 180 × 180 resolution only** to respect the contractual restriction on image dimensions.
5. **Display visible attribution** in your product’s UI or documentation (e.g., “Media © Gym visual – https://gymvisual.com/”) to satisfy the credit requirement for end-users.
6. **Include the MIT license file** for the non-media portions to comply with the dataset’s open-source obligations.

## Programmatically Accessing Attribution Metadata

Each JSON record in [`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json) includes an `attribution` key that holds the mandatory credit. You can programmatically extract this to ensure attribution is never omitted in your data pipeline.

**Python – Loading the dataset and extracting attribution:**

```python
import json
from pathlib import Path

# Load the full dataset

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

# Build a list of media entries with required attribution

media_entries = [
    {
        "id": ex["id"],
        "image_path": ex["image"],
        "gif_path": ex["gif_url"],
        "attribution": ex["attribution"],   # Must be displayed with the media

    }
    for ex in exercises
]

# Print the first entry as a sanity check

print(media_entries[0])

```

**JavaScript – Rendering a thumbnail with attribution in a web app:**

```html
<div id="exercise-card"></div>

<script type="module">
import exercises from "./data/exercises.json";

function renderExercise(card, ex) {
  const img = document.createElement("img");
  img.src = ex.image;               // 180×180 thumbnail
  img.alt = ex.name;
  const caption = document.createElement("p");
  caption.textContent = ex.attribution; // Mandatory credit
  card.append(img, caption);
}

// Render the first exercise as a demo
const container = document.getElementById("exercise-card");
renderExercise(container, exercises[0]);
</script>

```

**Shell – Verifying attribution integrity:**

```bash
#!/usr/bin/env bash
jq -r '.[] | "\(.id) \(.image) \(.gif_url) \(.attribution)"' data/exercises.json |
while read -r id img gif attr; do
  # Simple sanity check: attribute string must contain the expected prefix

  if [[ "$attr" != "© Gym visual — https://gymvisual.com/" ]]; then
    echo "⚠️ Missing or altered attribution for ID $id"
  fi
done

```

## Key Files and Their Licensing Roles

Understanding the repository structure helps you separate legally distinct components:

- **[`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json)**: Contains exercise metadata plus the `attribution` field required for media credits.
- **[`data/exercises.schema.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.schema.json)**: JSON Schema definition validating the structure of exercise records.
- **`images/`**: Directory of 180 × 180 thumbnails copyrighted by Gym visual.
- **`videos/`**: Directory of 180 × 180 GIF animations copyrighted by Gym visual.
- **[`NOTICE.md`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/NOTICE.md)**: Detailed terms governing media use, attribution requirements, and commercial licensing guidance.
- **`LICENSE`**: MIT license applying solely to the JSON data and schema files.

## Summary

- The **exercise data** ([`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json)) is MIT-licensed and free for commercial use with attribution.
- The **visual media** (`images/` and `videos/`) requires mandatory attribution (`© Gym visual — https://gymvisual.com/`) and a separate commercial license from Gym visual for for-profit use.
- Always use the **180 × 180 resolution** limit when displaying media files.
- Access the **`attribution` field** programmatically to ensure compliance in automated systems.
- Review **[`NOTICE.md`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/NOTICE.md)** before deploying any commercial application using this dataset.

## Frequently Asked Questions

### Do I need a commercial license for the JSON data in exercises-dataset?

No. The JSON data and metadata in [`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json) are released under the MIT License, which permits commercial use, modification, and distribution provided you include the original copyright notice. You only need to secure additional licensing for the visual media files, not the structured data.

### What happens if I don't include the Gym visual attribution?

Omitting the required attribution line violates the redistribution terms specified in [`NOTICE.md`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/NOTICE.md). Because Gym visual retains copyright to the 180 × 180 images and GIFs, failure to display `© Gym visual — https://gymvisual.com/` alongside the media constitutes copyright infringement and could result in legal action or termination of your usage rights.

### Can I resize the 180×180 media files to fit my application layout?

No. The permission granted in the repository explicitly restricts usage to the original 180 × 180 resolution. Scaling, cropping, or otherwise altering the dimensions of the images or GIFs violates the terms of use for the Gym visual media, regardless of whether you have obtained a separate commercial license.

### Where is the attribution string stored in the dataset?

The attribution string is stored in the **`attribution` field** of each record within [`data/exercises.json`](https://github.com/hasaneyldrm/exercises-dataset/blob/main/data/exercises.json). According to the repository structure, every exercise entry includes this field containing the exact credit `© Gym visual — https://gymvisual.com/`, which you must preserve and display whenever the associated media is rendered.