Skip to content

Add JSON Schema for exercises dataset#34

Merged
hasaneyldrm merged 1 commit into
hasaneyldrm:mainfrom
sarisen:add-json-schema
Jul 9, 2026
Merged

Add JSON Schema for exercises dataset#34
hasaneyldrm merged 1 commit into
hasaneyldrm:mainfrom
sarisen:add-json-schema

Conversation

@sarisen

@sarisen sarisen commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds data/exercises.schema.json — a JSON Schema (Draft 2020-12) that formally describes every field in data/exercises.json, including types, required fields, patterns (id / image / gif paths), the body_part enum, and the multilingual instructions / instruction_steps maps.
  • Documents the previously undocumented instruction_steps field in the README and adds a reference to the new schema.

Why

The dataset had no formal contract. A schema lets consumers and future contributors validate the data (and their own additions) with any standard JSON Schema validator, catching structural mistakes before they land.

Validation

Validated the schema against all 1,324 records using jsonschema (Draft202012Validator) — 0 errors.

Test plan

  • Schema validates the full dataset with zero errors
  • README file tree, key-files list and schema table updated
  • Maintainer review

Adds data/exercises.schema.json (Draft 2020-12) describing every field,
its type and constraints, so the dataset and community additions can be
validated with any standard JSON Schema validator. Validated against all
1,324 records with zero errors.

Also documents the previously undocumented instruction_steps field and
references the schema from the README.
@sarisen
sarisen force-pushed the add-json-schema branch from 2790dc9 to a081e72 Compare July 9, 2026 03:08
@hasaneyldrm
hasaneyldrm merged commit 62f3139 into hasaneyldrm:main Jul 9, 2026
hasaneyldrm added a commit that referenced this pull request Jul 9, 2026
…tructions)

Resolved README.md conflict with #34: kept both the instructions.hi row and
the instruction_steps.<lang> row (extended to include hi).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants