# chanind/hanzi-writer

Chinese character stroke order animations and practice quizzes

Repository: https://github.com/chanind/hanzi-writer
Canonical: https://ross.abutalabs.com/products/hanzi-writer
Homepage: https://hanziwriter.org
Language: TypeScript
License: MIT
License Family: permissive
Last push: 2025-12-31T05:43:32+00:00

## Health v2 (maintenance only)
Score: 55/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 60, release rhythm 24, longevity 100
- inputs: {"age_days": 4371, "days_push": 245, "days_rel": 350, "gap_med": 179.5, "n_releases_24m": 3}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4938, forks 725 (observed 2026-08-28T04:09:02.736025+00:00)

## What it is
Hanzi Writer is a free and open-source JavaScript library for animating Chinese character stroke order and running stroke order practice quizzes. It supports over 9000 simplified and traditional characters using SVG data derived from the Make Me a Hanzi project.

## Use cases
- animate chinese character stroke order on a webpage
- build a quiz where users draw hanzi strokes in the right order
- embed chinese writing practice in a mobile app
- teach simplified and traditional character writing
- render chinese characters as svg with stroke data

## When to choose
- you need lightweight (~10kb gzipped) stroke order animations in any JS environment
- you want both animation and interactive quiz modes
- you need support for both simplified and traditional characters

## When to avoid
- you need handwriting recognition rather than stroke-order quizzes
- you need languages other than Chinese
- you need a full language-learning curriculum rather than a rendering library

## Facets
- artifact type: library
- maturity: stable
- function: animation, ui-components, graphics
- domain: education, web-development, frontend
- platform: browser, cross-platform
- tags: chinese-characters, stroke-order, svg, hanzi, language-learning, quiz, natural-language-processing, nodejs, web-server

## Member repositories
- chanind/hanzi-writer (main) score 55

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:02.736025+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:17:56.556272+00:00, confidence not recorded.
  - readme: https://github.com/chanind/hanzi-writer (fetched 2026-08-28T04:09:02.736025+00:00, sha a9f02e9e5548)
  - homepage: https://hanziwriter.org (fetched 2026-08-29T08:59:56.400360+00:00, sha 90b3db54f4be)
  - site_page: https://hanziwriter.org/docs.html (fetched 2026-08-29T08:59:56.409548+00:00, sha 2d66752b791c)
  - registry_npm: https://registry.npmjs.org/hanzi-writer (fetched 2026-08-29T08:59:56.412488+00:00, sha 6d3484ef03a7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
