Three documentation inaccuracies, all independent of each other.
1. `media_id`, `image` and `gif_url` were typed `string | null`, but no
record has a null in any of them (0/1324 each) and the JSON Schema
declares all three as required, non-nullable strings — `image` and
`gif_url` even carry path patterns. The optional type pushed needless
null-handling onto every consumer. Narrowed to `string`.
2. `instruction_steps` was missing from the interface entirely, even
though every record carries it and the field table documents it.
Added, typed `string[]` per language.
3. The Python example stopped at Hindi, skipping Polish and Korean; the
JavaScript example right below it lists both. Added the two lines.
Docs only — no data or schema changes.
Incorporates the translation content from two external PRs onto current main
(their branches were based on a pre-media-restore history with no common
ancestor, so applied programmatically rather than merged):
- Polish (pl) from #25 (Dawid Matyjasik) — as submitted.
- Korean (ko) from #27 (SeungTaek Lim) — normalized to the dataset convention:
only nested instructions.ko / instruction_steps.ko were kept. The PR's extra
flat top-level *_ko metadata fields (name_ko, target_ko, etc.) were dropped
because they are inconsistent with every other language and would violate
data/exercises.schema.json (additionalProperties: false).
Updates data/exercises.json (all 1,324 records), the embedded EXERCISES blob
and SQL export in index.html, the SQL schemas / INSERT builder / LLM prompt in
setup.html, and README language references (7 -> 9 languages). Change is purely
additive: stripping pl+ko reproduces the previous data byte-for-byte.
Co-Authored-By: Dawid Matyjasik <63721806+dawidmatyjasik@users.noreply.github.com>
Co-Authored-By: SeungTaek Lim <61047602+namest504@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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>
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.