halkyon/halkyon_learn_flutter/assets/kanjivg/ATTRIBUTION.md
Tizian 「ティツィアーン」 ed5bb3f6b1
feat(app): stroke order for kanji and kana, from KanjiVG
KanjiVG's strokes come with the app (assets/kanjivg/, CC BY-SA 3.0, its
notice in the licence list): 94 gzipped files, one per 256 code points,
2.7 MB in all, a file read the first time a character of it is asked for
(StrokeRepository, app-wide beside the maps). The strokes are SVG path
data, read with path_parsing (the Flutter team's, pure Dart, already in
the build through flutter_svg), so the model can flatten them into points
without dart:ui, as checking handwriting will.

A character's sheet traces its strokes in order over those to come, with
its stroke count, meanings, readings, level and the components KanjiVG
splits it into, each a tap away. It opens from a studied character's
answer (Stroke order) and from a character found in the dictionary.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-10-09 18:09:34 +02:00

681 B
Raw Blame History

Stroke data

The files in this folder derive from KanjiVG (https://kanjivg.tagaini.net), the release of 2026-07-14, © 2009–2013 Ulrich Apel, distributed under the Creative Commons Attribution-Share Alike 3.0 licence (https://creativecommons.org/licenses/by-sa/3.0/). They are distributed under the same licence. LICENSE.txt is KanjiVG's notice, which the app's licence list shows.

halkyon_learn_curator's curate kanjivg writes them (see its README): each character's strokes as KanjiVG draws them and the components KanjiVG splits it into, keyed by the code point of KanjiVG's entry, in one gzipped JSON file for every 256 code points. Nothing else is changed.