lingdojo/kana-dojo

Aesthetic, minimalist platform for learning Japanese inspired by Duolingo and Monkeytype, built with Next.js and sponsored by Vercel. Beginner-friendly with plenty of good first issues - all contributions are welcome!

TypeScript

3,419

31,798 commits

updated Sep 19, 2026

See the code
beginner
beginner-friendly
contribute
contribution
contributions-welcome
first-contributions
first-timers-only
good-first-contribution
good-first-issue
good-first-pr
hacktoberfest
help-wanted
japanese
japanese-language
language-learning
learn-japanese
nextjs
open-source
react
up-for-grabs

See what people are saying (1)

SourceMessageScoreDate

I made an open-source app for learning Japanese inspired by Duolingo (r/webdev)

As someone who loves both coding and language learning (I'm learning Japanese right now), I always wished there was a free, open-source tool for learning Japanese, just like Monkeytype in the typing community. Here's the main selling point: I added a gazillion different color themes, fonts and…

0

Sep 19, 2026

README

This project is sponsored by

Vercel OSS Program

Cossistant OSS Program

KanaDojo かな道場

KanaDojo Banner

Training

An aesthetic, minimalist, and highly customizable platform for mastering Japanese, inspired by Duolingo and Monkeytype. Built with Next.js and sponsored by Vercel.

Vercel OSS Program Sponsored by Vercel

Live Demo DeepWiki Good First Issues License Next.js TypeScript Zustand Tailwind CSS Vitest AGPL-3.0 Discord Email


About

KanaDojo is an engaging and user-friendly web-based Japanese learning platform that makes mastering Hiragana, Katakana, Kanji, and vocabulary fun and intuitive. Built with a focus on aesthetics, customization, and effective learning, it provides an immersive training environment for Japanese language learners at all levels.

Contributing

For Complete Beginners

Start with the Beginner's Contribution Guide for a step-by-step walkthrough that explains everything from creating a GitHub account to opening your first PR.

Not a Beginner?

All contributions are welcome! Whether you're fixing bugs, adding features, improving documentation, or translating — check out CONTRIBUTING.md to get started.

Live Demo · Documentation

Key Features

  • Three Training Dojos — Kana (Hiragana/Katakana), Kanji (JLPT N5-N1), and Vocabulary
  • Four Game Modes — Pick, Reverse-Pick, Input, and Reverse-Input for varied practice
  • 100+ Themes — Beautiful light and dark themes with 28 Japanese fonts
  • Progress Tracking — Statistics, streaks, and 80+ achievements
  • Fully Responsive — Works seamlessly on desktop, tablet, and mobile

Quick Start

git clone https://github.com/lingdojo/kana-dojo.git
cd kana-dojo
npm install
npm run dev

Open http://localhost:3000 to start learning.

To validate changes before opening a PR:

npm run check

Having issues? See the Troubleshooting Guide

Documentation

DocumentDescription
ArchitectureProject structure, patterns, and conventions
UI DesignTheming, styling, and component guidelines
Translation GuideHow to translate the app
TroubleshootingCommon issues and solutions
Beginner ContributingStep-by-step guide for first-time contributors
All DocumentationComplete documentation index

Tech Stack

See Architecture docs for full technical details.

Credits

Sponsors

  • Vercel — part of Vercel's Open-source Software Sponsorship Program.
  • Cossistant — part of Cossistant's Open-source Program.

Inspiration

Japanese Language Libraries

  • Kuroshiro — Japanese text conversion and romanization.
  • Kuromoji — Japanese tokenizer used for text analysis.
  • Wanakana — kana and romaji transliteration helpers.

Data Sources

Star History

Star History Chart

License

This project is licensed under the AGPL 3.0 License — see LICENSE.md for details.

Contact


Made with ❤️ by the open-source community for Japanese language learners worldwide

がんばって! (Ganbatte! — Do your best!)

⬆ Back to top

Contributors

(top 30 of 467)

tentoumushii

26,981 commits

github-actions[bot]

1,767 commits

gentrit04

88 commits

Berserk-hub150

52 commits

lingdojo/kana-dojo

Aesthetic, minimalist platform for learning Japanese inspired by Duolingo and Monkeytype, built with Next.js and sponsored by Vercel. Beginner-friendly with plenty of good first issues - all contributions are welcome!

TypeScript

3,419

31,798 commits

updated Sep 19, 2026

See the code
beginner
beginner-friendly
contribute
contribution
contributions-welcome
first-contributions
first-timers-only
good-first-contribution
good-first-issue
good-first-pr
hacktoberfest
help-wanted
japanese
japanese-language
language-learning
learn-japanese
nextjs
open-source
react
up-for-grabs

See what people are saying (1)

SourceMessageScoreDate

I made an open-source app for learning Japanese inspired by Duolingo (r/webdev)

As someone who loves both coding and language learning (I'm learning Japanese right now), I always wished there was a free, open-source tool for learning Japanese, just like Monkeytype in the typing community. Here's the main selling point: I added a gazillion different color themes, fonts and…

0

Sep 19, 2026

README

This project is sponsored by

Vercel OSS Program

Cossistant OSS Program

KanaDojo かな道場

KanaDojo Banner

Training

An aesthetic, minimalist, and highly customizable platform for mastering Japanese, inspired by Duolingo and Monkeytype. Built with Next.js and sponsored by Vercel.

Vercel OSS Program Sponsored by Vercel

Live Demo DeepWiki Good First Issues License Next.js TypeScript Zustand Tailwind CSS Vitest AGPL-3.0 Discord Email


About

KanaDojo is an engaging and user-friendly web-based Japanese learning platform that makes mastering Hiragana, Katakana, Kanji, and vocabulary fun and intuitive. Built with a focus on aesthetics, customization, and effective learning, it provides an immersive training environment for Japanese language learners at all levels.

Contributing

For Complete Beginners

Start with the Beginner's Contribution Guide for a step-by-step walkthrough that explains everything from creating a GitHub account to opening your first PR.

Not a Beginner?

All contributions are welcome! Whether you're fixing bugs, adding features, improving documentation, or translating — check out CONTRIBUTING.md to get started.

Live Demo · Documentation

Key Features

  • Three Training Dojos — Kana (Hiragana/Katakana), Kanji (JLPT N5-N1), and Vocabulary
  • Four Game Modes — Pick, Reverse-Pick, Input, and Reverse-Input for varied practice
  • 100+ Themes — Beautiful light and dark themes with 28 Japanese fonts
  • Progress Tracking — Statistics, streaks, and 80+ achievements
  • Fully Responsive — Works seamlessly on desktop, tablet, and mobile

Quick Start

git clone https://github.com/lingdojo/kana-dojo.git
cd kana-dojo
npm install
npm run dev

Open http://localhost:3000 to start learning.

To validate changes before opening a PR:

npm run check

Having issues? See the Troubleshooting Guide

Documentation

DocumentDescription
ArchitectureProject structure, patterns, and conventions
UI DesignTheming, styling, and component guidelines
Translation GuideHow to translate the app
TroubleshootingCommon issues and solutions
Beginner ContributingStep-by-step guide for first-time contributors
All DocumentationComplete documentation index

Tech Stack

See Architecture docs for full technical details.

Credits

Sponsors

  • Vercel — part of Vercel's Open-source Software Sponsorship Program.
  • Cossistant — part of Cossistant's Open-source Program.

Inspiration

Japanese Language Libraries

  • Kuroshiro — Japanese text conversion and romanization.
  • Kuromoji — Japanese tokenizer used for text analysis.
  • Wanakana — kana and romaji transliteration helpers.

Data Sources

Star History

Star History Chart

License

This project is licensed under the AGPL 3.0 License — see LICENSE.md for details.

Contact


Made with ❤️ by the open-source community for Japanese language learners worldwide

がんばって! (Ganbatte! — Do your best!)

⬆ Back to top

Contributors

(top 30 of 467)

tentoumushii

26,981 commits

github-actions[bot]

1,767 commits

gentrit04

88 commits

Berserk-hub150

52 commits

Languages

TypeScript

79.1%

MDX

18.4%

JavaScript

2.0%