Changelog

All notable changes to japaneseness.com.

[0.12.0] — 2026-05-11 (later)

Added

- /api/manifest.json — full sheet catalog (all categories) - /api/kanji.json — 80 N5 kanji with readings + SVG paths - /api/languages.json — Tier 1 50 languages metadata - CORS open, cacheable, no auth needed - Hotlink stable URLs - Iframe detail pages - JSON API for dynamic use - Stable URL patterns documented (/kanji/{id}/, /grammar/{id}/, /kanji_svg/{code}.svg, /og/kanji/{id}.png) - Deterministic daily rotation (UTC day-of-year mod 80) - SVG stroke order, EN+JA meanings, on/kun readings, link to detail - No JS fetch — fully static, ships under 5KB extra

Docs

Build

[0.11.0] — 2026-05-11 (later)

Added

Each phase: status (in-progress/planned/future/vision), done list, remaining list Shows kanji + grammar coverage per level (N5 done, N4 prepped, N3-N1 future) long-form description, quotable stats, contact based on UTC day) with SVG stroke order, readings, link to detail (was 'BN', 'UR', etc. — now 'বাংলা', 'اردو', 'மிற்', 'மலையாளம்', 'Kiswahili', 'Igbo', 'Runa Simi', 'ʻŌlelo Hawaiʻi', etc.)

Changed

Build

[0.10.0] — 2026-05-11 (later)

Added

readings, English meanings, and 2 example words each (was 30/158 → 80/158 → now 156/158, near-complete) たら/ば/と/なら, modal expressions, comparison より/ほうが, time relationships とき/まえに/あとで, concession のに/けれども, etc.) - Each /grammar/grammar_n5_NNN/ now has unique social card - 9 specific actionable tasks across Translation/Outreach/Content/Code - Each with badge (⭐ count), time estimate, difficulty - Direct links to the relevant GitHub files/pages

Build

[0.9.0] — 2026-05-11 (later)

Added

- Each kanji detail page (/kanji/kanji_n5_NNN/) has a unique social card - Composited from KanjiVG stroke-order SVG + meaning text + JLPT badge - Sharing /kanji/kanji_n5_001/ on Slack now shows 一 with stroke order - 200 worksheet definitions, 800 PDFs in pipeline, 50 languages, 80 kanji SVGs, 362 HTML pages, etc. - Progress bars for language coverage (4/50 full, 27/50 UI translated) - Per-category sheet count table no fingerprinting; Cloudflare Web Analytics is the only beacon (anonymous, aggregated). Important for GDPR-conscious users in EU/UK regions. 以, 思, 家, 世, 多, 正, 安, 院, 心, 界, 教, 文, 元, 重, 近, 考, 画, 海, 売, 知, 道, 集, 別, 物, 使, 品, 計, 死, 特, 私, 始, 朝, 運, 終, 台, 広, 住, 真, 有, 口, 少) - N4 kanji with data: 80/158 (was 30/158)

Changed

Build

[0.8.0] — 2026-05-11 (later)

Added

with all nav links (Hiragana, Katakana, Kanji, Grammar, Teachers, Learners, Resources, Languages, About, Contribute, Search) Each social card now matches the page topic (Hiragana shows あいうえお, Kanji shows 日 一 人 大, etc.) /languages/, /teachers/ 地, 業, 方, 新, 場, 員, 立, 開, 手, 力, 問, 代, 明, 動, 京, 目, 通, 言, 理, 体, 田, 主, 題). Remaining 128 N4 kanji are Phase 2.

Changed

- manifest.json has pdfs_available: false while R2 isn't wired up - Category pages show "📅 PDF coming soon" instead of broken 404 links - Kanji and grammar detail pages show a disabled "Coming soon" pill - "Download all (ZIP)" buttons are conditionally rendered - When R2 is wired up and PDFs uploaded, flipping to true re-enables all download UIs everywhere

Strategy

with a transparent banner explaining the build pipeline is better than silent 404s.

[0.7.0] — 2026-05-11 (latest)

Added

- Twitter / Slack / LinkedIn social cards now render properly icon-192, icon-512 - Skip-link for keyboard users (Tab on any page → "Skip to content") - role="main", role="contentinfo", aria-label on nav and language picker - :focus-visible ring (vermilion 3px outline) on all interactive elements

Changed

Build

[0.6.0] — 2026-05-11 (later)

Added

- Large stroke-order SVG, big kanji glyph, on/kun readings table - Meaning in EN + JA, PDF download button, Prev/Next nav - SEO-optimized title/description per kanji - Topic + summary + JLPT level + PDF download - Prev/Next nav between topics → ui-ready languages: 27 (was 23) → ui-pending languages: 19 (was 23) remaining 19 ui-pending UI files when run by the user with their key

Changed

(free, privacy-friendly, no cookies, no script bloat). User just needs to paste their CF Web Analytics token into BaseLayout (token placeholder in place).

Build

[0.5.0] — 2026-05-11

Major: 50-language UI rollout

(Mandarin, Hindi, Spanish, French, Arabic, Bengali, Russian, Portuguese, Urdu, German, Swahili, Marathi, Telugu, Turkish, Tamil, Vietnamese, Korean, Italian, Persian, Polish, Ukrainian, Punjabi, Malayalam, Hausa, Igbo, Burmese, Thai, Gujarati, Romanian, Dutch, Kannada, Sundanese, Tagalog, Malay, Hebrew, Greek, Czech, Hungarian, Swedish, Finnish, Norwegian, Amharic, Zulu, Quechua, Guarani, Hawaiian — plus existing en/id/yo/ja)

Three-tier status system replacing the lock icon

English/Indonesian/Yoruba/Japanese fallback

Added

on for these locales

Strategy

Better: ship the UI in all 50, be transparent about what's hand-translated vs machine-pending, let learners browse + invite review contributions. reviewers commit.

[0.4.0] — 2026-05-03 (later)

Added

- 4 live (en, id, yo, ja) + 46 on roadmap with 🔒 lock icon - Mix of high-population languages and linguistic diversity - Includes RTL languages (Arabic, Hebrew, Urdu, Persian) and minority langs (Quechua, Hawaiian, Guaraní) - Speakers, script, RTL flag per language - "Vote for your language" CTA → GitHub Discussions

Strategy

worksheets without native reviewer (trust > scale)

[0.3.0] — 2026-05-03 (later)

Added

[0.2.0] — 2026-05-03

Added

Changed

Known issues

[0.1.0] — 2026-04-26

Added

Live version: github.com/toriiyu/japaneseness/blob/main/CHANGELOG.md