This project is sponsored by
# KanaDojo かな道場


**An aesthetic, minimalist, and highly customizable platform for mastering Japanese, inspired by Duolingo and Monkeytype. Built with Next.js and sponsored by Vercel.**
[](https://vercel.com/open-source-program)
[](https://vercel.com/oss)
[](https://kanadojo.com)
[](https://deepwiki.com/lingdojo/kana-dojo)
[](https://github.com/lingdojo/kana-dojo/issues?q=is%3Aissue+is%3Aopen+label%3A%22good%20first%20issue%22)
[](LICENSE.md)
[](https://nextjs.org/)
[](https://typescriptlang.org/)
[](https://github.com/pmndrs/zustand)
[](https://tailwindcss.com)
[](https://vitest.dev/)
[](https://gnu.org/licenses/agpl-3.0)
[](https://discord.gg/CyvBNNrSmb)
[](mailto:dev@kanadojo.com)
---
## 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](./docs/CONTRIBUTING-BEGINNERS.md) 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](./CONTRIBUTING.md) to get started.
[Live Demo](https://kanadojo.com) · [Documentation](./docs/)
## 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
```bash
git clone https://github.com/lingdojo/kana-dojo.git
cd kana-dojo
npm install
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) to start learning.
To validate changes before opening a PR:
```bash
npm run check
```
> **Having issues?** See the [Troubleshooting Guide](./docs/TROUBLESHOOTING.md)
## Documentation
| Document | Description |
| --------------------------------------------------------- | ---------------------------------------------- |
| [Architecture](./docs/ARCHITECTURE.md) | Project structure, patterns, and conventions |
| [UI Design](./docs/UI_DESIGN.md) | Theming, styling, and component guidelines |
| [Translation Guide](./docs/TRANSLATION_GUIDE.md) | How to translate the app |
| [Troubleshooting](./docs/TROUBLESHOOTING.md) | Common issues and solutions |
| [Beginner Contributing](./docs/CONTRIBUTING-BEGINNERS.md) | Step-by-step guide for first-time contributors |
| [All Documentation](./docs/) | Complete documentation index |
## Tech Stack
- [Next.js](https://nextjs.org/) 15
- [React](https://react.dev/) 19
- [TypeScript](https://www.typescriptlang.org/)
- [Tailwind CSS](https://tailwindcss.com/)
- [shadcn/ui](https://ui.shadcn.com/)
- [Zustand](https://github.com/pmndrs/zustand)
- [Framer Motion](https://framer.com/motion/)
> See [Architecture docs](./docs/ARCHITECTURE.md) for full technical details.
## Credits
### Logo
- [Brandon Haupt](https://www.instagram.com/talorash/) — creator of the KanaDojo logo.
### Sponsors
- [Vercel](https://vercel.com/oss) — part of Vercel's Open-source Software Sponsorship Program.
- [Cossistant](https://cossistant.com/) — part of Cossistant's Open-source Program.
### Inspiration
- [Duolingo](https://www.duolingo.com/) — main inspiration.
- [Monkeytype](https://github.com/monkeytypegame/monkeytype) — UI and design inspiration.
### Japanese Language Libraries
- [Kuroshiro](https://github.com/hexenq/kuroshiro) — Japanese text conversion and romanization.
- [Kuromoji](https://github.com/takuyaa/kuromoji.js) — Japanese tokenizer used for text analysis.
- [Wanakana](https://github.com/WaniKani/WanaKana) — kana and romaji transliteration helpers.
### Data Sources
- [JMdict](https://www.edrdg.org/jmdict/j_jmdict.html) — Japanese-English dictionary data.
- [KANJIDIC](http://www.edrdg.org/wiki/index.php/KANJIDIC_Project) — kanji readings and meanings database.
- [Jonathan Waller's JLPT Resources](https://japanesetest4you.com/) — JLPT study references.
- [jlptsensei.com](https://jlptsensei.com/) — JLPT vocabulary and study material.
## Star History
[](https://star-history.com/#lingdojo/kana-dojo&Date)
## License
This project is licensed under the AGPL 3.0 License — see [LICENSE.md](./LICENSE.md) for details.
## Contact
- **Discord**: https://discord.gg/CyvBNNrSmb
- **Email**: dev@kanadojo.com
---
**Made with ❤️ by the open-source community for Japanese language learners worldwide**
がんばって! (Ganbatte! — Do your best!)
[⬆ Back to top](#top)