Skip to content

Me

Install the app

Put Hanzi Path on your home screen so it opens like an app.

How to
Credits & licenses

Hanzi Path is free and open source. It is not affiliated with any other language app or with the HSK test organisers.

Hanzi Path is built from openly licensed data. npm run data (scripts/build-data.mjs) downloads each source below into data/raw/ (gitignored cache), then writes src/data/{words,sentences,grammar,course,pinyin}.json. GitHub sources are pinned to a commit so the build is reproducible; CC-CEDICT and the Tatoeba export are dated snapshots.

Each section lists: URL, License, Attribution (the exact text to show on the credits page) and Used for. The in-app credits (Me → Credits & licenses) render this file. docs/LICENSES.md has the full audit: every third-party input, its obligations and where each one is met.

Share-alike files

  • Because they contain glosses derived from CC-CEDICT (CC BY-SA 4.0), src/data/words.json, src/data/stories/*.json (glossaries) and src/data/stories/search.json are shared under CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/).
  • The Wikivoyage excerpts (src/data/stories/wv-*.json) are adaptations of CC BY-SA 4.0 text and are shared under CC BY-SA 4.0 too.
  • The recordings in public/audio/cmn/ (audio-cmn) and the clips in public/audio/tts/ that are stitched from audio-cmn syllables are CC BY-SA; see public/audio/LICENSE.txt and the NOTICE file in the repository root.

HSK 2.0 vocabulary (2012 official lists) — hskhsk.com

  • URL: https://github.com/glxxyz/hskhsk.com (files cidian/data/HSK Official With Definitions 2012 L1.txt … L6.txt, commit 8a6f229c)
  • License: MIT
  • Attribution: HSK 2012 word lists from hskhsk.com by Alan Davies, © 2020 Alan Davies, MIT License.
  • Used for: which words belong to HSK 2.0 levels 1–6, their traditional forms, numbered pinyin and short English glosses (words.json, hsk field). A few rows that merge several readings or repeat a word across levels were resolved by hand (see READINGS in scripts/words.mjs); garbled pinyin in a few rows was corrected against CC-CEDICT. The word lists themselves are published by Chinese Testing International (Hanban).

Complete HSK Vocabulary

  • URL: https://github.com/drkameleon/complete-hsk-vocabulary (complete.json, commit 7ac65bf1)
  • License: MIT (its glosses come from CC-CEDICT, see below)
  • Attribution: Complete HSK Vocabulary by Yanis Zafirópulos (Dr.Kameleon), © 2026 Yanis Zafirópulos, MIT License.
  • Used for: HSK 3.0 levels (hsk3), word frequency rank (freq), parts of speech (pos), and the HSK 3.0 levels 1–6 words that are not in HSK 2.0 (included with hsk: 0; their pinyin and glosses come from this file). HSK 3.0 band 7–9-only words (~4,000) are left out to keep words.json small.

CC-CEDICT

  • URL: https://www.mdbg.net/chinese/dictionary?page=cc-cedict (export https://www.mdbg.net/chinese/export/cedict/cedict_1_0_ts_utf-8_mdbg.txt.gz)
  • License: Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0), https://creativecommons.org/licenses/by-sa/4.0/
  • Attribution: CC-CEDICT, published by MDBG, © the CC-CEDICT contributors; based on CEDICT © 1997, 1998 Paul Andrew Denisowski. Licensed under CC BY-SA 4.0.
  • Used for: traditional forms per reading, glosses where a list had none, pinyin fixes, the segmentation dictionary for example sentences, detecting traditional-only characters (to keep only simplified sentences), example characters in the pinyin chart, and a few extra non-HSK words (汤姆, 玛丽, 男孩, 女孩). Because glosses derive from CC-CEDICT, `src/data/words.json` is shared under CC BY-SA 4.0.

Tatoeba example sentences (via ManyThings.org)

  • URL: https://tatoeba.org (sentence pairs file https://www.manythings.org/anki/cmn-eng.zip, built from Tatoeba's sentences_detailed.csv, native-speaker and proofread sentences only)
  • License: Creative Commons Attribution 2.0 France (CC BY 2.0 FR), https://creativecommons.org/licenses/by/2.0/fr/ — Tatoeba terms: https://tatoeba.org/en/terms_of_use
  • Attribution: Example sentences from the Tatoeba Project (https://tatoeba.org), CC BY 2.0 FR, sentence pairs selected by ManyThings.org (https://www.manythings.org/anki). Each sentence credits its authors: Chinese sentence author / English translation author.
  • Used for: sentences.json entries with source: "tatoeba". sourceId is the Tatoeba id of the Chinese sentence (https://tatoeba.org/en/sentences/show/<sourceId>), author is "<Chinese author> / <English author>". Sentences were filtered (simplified only, ≤ 14 hanzi, every word in the HSK vocabulary), segmented and given pinyin by our pipeline; the text itself is unchanged apart from removed spaces.

Native audio — audio-cmn

  • URL: https://github.com/hugolpz/audio-cmn (served from jsDelivr at a pinned commit: https://cdn.jsdelivr.net/gh/hugolpz/audio-cmn@59dbafbda8b172ffc3b8b295cd5938ae1b3de803/64k/…)
  • License: CC BY-SA. Word recordings: Creative Commons Attribution-ShareAlike 3.0 United States (CC BY-SA 3.0 US), https://creativecommons.org/licenses/by-sa/3.0/us/. Syllable recordings: CC BY-SA.
  • Attribution: Mandarin recordings from audio-cmn by Hugo Lopez (PLIDAM, INALCO). Word recordings © 2009 Yue Tan, recorded at the Université de Caen with Shtooka Recorder (SWAC collections), CC BY-SA 3.0 US. Syllable recordings by Chen Wang, CC BY-SA.
  • Used for: Word.audio (only for words whose hanzi has a single reading) and PinyinSyllable.tones[t].audio. The app serves 24 kbps copies of the recordings it uses from public/audio/cmn/{hsk,syllabs}/ (jsDelivr refuses this repository as too large); the CDN URL is kept only where a copy is missing. The copies are unchanged apart from the bitrate. public/audio/LICENSE.txt carries the license notice with the files.

Generated voice audio — Kokoro

Stroke order data — Make Me a Hanzi / Hanzi Writer

pinyin-pro

  • URL: https://github.com/zh-lx/pinyin-pro
  • License: MIT
  • Attribution: pinyin-pro by zh-lx, © 2022-present zh-lx, MIT License.
  • Used for: context-aware pinyin of example sentences (with 一/不 tone changes) and the syllable inventory of the pinyin chart.

Graded stories — Storybooks Canada (Mandarin)

  • URL: https://storybookscanada.ca/stories/zh/ (text from https://github.com/global-asp/sbc-source, files zh/NNNN_*.md and en/NNNN_*.md, commit be28dab3; each story page https://storybookscanada.ca/stories/zh/NNNN/ is fetched to confirm its license)
  • License: Creative Commons Attribution (CC BY 3.0 for 15 stories, CC BY 4.0 for 3), https://creativecommons.org/licenses/by/3.0/ and https://creativecommons.org/licenses/by/4.0/, as stated on each story page. Stories marked CC BY-NC in the source are not used (the pipeline refuses any page whose license is not CC BY). Most stories come from the African Storybook (https://africanstorybook.org).
  • Attribution: per story, shown at the bottom of its page in the app (/stories/sbc-NNNN) and stored in src/data/stories/index.json (attribution): title, author, illustrator, Chinese translator, source URL, original African Storybook URL, license and what we changed. Example: "What are you doing?" by Nina Orange, illustrated by Wiehan de Jager, Chinese translation by dohliam, from Storybooks Canada, CC BY 3.0.
  • Used for: 18 open stories in src/data/stories/ (npm run stories, scripts/build-stories.mjs). The text is unchanged apart from joining each page into one line (illustrations are left out); the English pages are the parallel translations. We add word segmentation, pinyin and glosses (CC-CEDICT / words.json).
  • Not used (no text copied): Mandarin Corner, Du Chinese, The Chairman's Bao, Mandarin Bean, Mandarin Companion, Chinese Reading Practice, HSK Online and StoryWeaver appear only as outbound links in "Read more online" on /stories. StoryWeaver's Simplified Chinese books are CC BY 4.0, but their text can only be read when signed in, so none were imported.

News excerpts — Chinese Wikinews (维基新闻)

  • URL: https://zh.wikinews.org (each excerpt is taken from a pinned revision, https://zh.wikinews.org/w/index.php?oldid=<id>&variant=zh-cn, listed in scripts/stories-wiki.mjs)
  • License: Creative Commons Attribution 4.0 (CC BY 4.0), https://creativecommons.org/licenses/by/4.0/, as stated in the footer of each article page; the pipeline checks the page's license link. Per Wikinews:版权, text published before 30 January 2025 was released under CC BY 2.5 and may be reused under either version; we use CC BY 4.0.
  • Attribution: per article, at the bottom of its page in the app (/stories/wn-…): the article title, "Wikinews contributors" (linked to the page history), publication date, the revision used, the license and what we changed. Example: “嫦娥五號成功著陸月球表面” on Wikinews, 2020-12-02, by Wikinews contributors, CC BY 4.0.
  • Used for: 5 short news excerpts (6-11 sentences each) for HSK 5-6 readers: Chang'e 5 landing, Tianwen-1 reaching Mars orbit, the Yilan impact crater, the panda Xinxing's 38th birthday, Singapore's hawker culture on the UNESCO list. Changes: selected sentences only, converted to simplified characters (著陆 → 着陆); English translation, comprehension questions, segmentation, pinyin and glosses added by us. News reports are dated and reflect what was known then.

Travel-guide excerpts — Chinese Wikivoyage (维基导游)

  • URL: https://zh.wikivoyage.org (pinned revisions of the 北京, 成都, 西安 and 上海 guides, listed in scripts/stories-wiki.mjs)
  • License: Creative Commons Attribution-ShareAlike 4.0 (CC BY-SA 4.0), https://creativecommons.org/licenses/by-sa/4.0/, as stated in each page footer (checked by the pipeline).
  • Attribution: per excerpt, at the bottom of its page in the app (/stories/wv-…): the page title, "Wikivoyage contributors" (linked to the page history), the revision used, the license, what we changed, and that the adaptation is shared under CC BY-SA 4.0.
  • Used for: 4 travel excerpts (10-13 sentences): Beijing's weather and what to pack, eating in Chengdu, Xi'an's noodles and snacks, Shanghai at a glance. Changes: selected sentences only (paragraphs naming brands and businesses left out), converted to simplified characters; English translation, questions, segmentation, pinyin and glosses added by us. Share-alike: these adaptations (src/data/stories/wv-*.json) are licensed CC BY-SA 4.0.

Pictures — Fluent Emoji (Microsoft)

  • URL: https://github.com/microsoft/fluentui-emoji (the "3D" style PNGs, commit 1ffb34c7)
  • License: MIT License, https://github.com/microsoft/fluentui-emoji/blob/main/LICENSE
  • Attribution: Fluent Emoji by Microsoft, © Microsoft Corporation, MIT License.
  • Used for: the pictures in picture quizzes and picture scenes. npm run pictures (scripts/build-pictures.mjs) downloads only the 162 images we use at the pinned commit, resizes them to 160 px WebP into public/images/fluent/ and writes the word → picture mapping src/data/pictures.json. The images are unchanged apart from the size and format; public/images/fluent/LICENSE.txt carries the copyright and MIT license text with the files. The scene backgrounds (room, table) are drawn with CSS by us.

Fonts

  • Nunito by Vernon Adams, Cyreal and Jacques Le Bailly, SIL Open Font License 1.1 (https://openfontlicense.org), self-hosted through next/font/google. Chinese text uses the reader's system fonts; no CJK font is shipped.

Software libraries

  • Next.js (© Vercel), React (© Meta Platforms), Tailwind CSS (© Tailwind Labs), ts-fsrs (the FSRS scheduling algorithm, © open-spaced-repetition), Hanzi Writer (© David Chanin), pinyin-pro (© zh-lx), Clerk's Next.js SDK (© Clerk) and node-redis (© Redis) are used under the MIT License (https://opensource.org/license/mit); each package's full license text ships with it in node_modules/<package>/LICENSE.

HSK exam format

  • Source: facts only (question counts, timing, total and pass scores) from the official HSK pages at https://www.chinesetest.cn and test-centre format pages; no exam items are copied and all instructions are reworded (see docs/FEATURES.md). HSK is a trademark of its owners; Hanzi Path is not affiliated with them.

Original content

  • License: same as the Hanzi Path code.
  • Used for: the 64 original graded stories and articles (24 in scripts/stories-original.mjs, 40 themed pieces in scripts/stories-themed-hsk12.mjs, -hsk34.mjs, -hsk56.mjs → src/data/stories/), written from general knowledge without paraphrasing any particular source; all grammar explanations and grammar examples (grammar.json), sentences with source: "original" (o1, o2, …), the HSK 1–2 unit/lesson plan (scripts/course-plan.mjs), beginner-friendly glosses for a few HSK 1–2 words, the automatic grouping of HSK 3–6 lessons, the drills and problem sets, the 340 "answer the question" / "change the sentence" build pairs (scripts/build-pairs.mjs → src/data/build-pairs.json), the picture-scene templates, the icons and the logo.

External links

  • Sites listed in "Read more online" (/stories) are run by others and are only linked, never copied or embedded.