Skip to content

Luck1y1337/NihonGo

Repository files navigation

sakura

日本Go — NihonGo Roadmap

Your personal Japanese learning dashboard — from zero to JLPT N2

Live Demo

Live Demo CI React TypeScript Vite Tailwind Framer Motion Offline First License: MIT


What is NihonGo?

NihonGo Roadmap is a fully client-side Japanese language learning app designed for a structured 3-year study plan from absolute beginner to JLPT N2. No backend, no accounts — all your progress stays in your browser.

Built for learners who want to study kana, kanji, vocabulary, and grammar with spaced repetition, quizzes, and progress tracking — all in one place.


Features

Feature Description
Kana Trainer Interactive hiragana & katakana grid with speech synthesis and quiz mode
Kanji Browser 400+ kanji organized by JLPT level (N5 → N2) with readings and examples
Vocabulary 120+ N5 words across 8 topics with one-click SRS deck creation
Grammar Lessons 15 structured N5 lessons with embedded quizzes
SRS Review Spaced repetition flashcards using the SM-2 algorithm
Quiz Mode 5 quiz types — kana recognition, typing, vocab, kanji meaning
Study Roadmap 4-phase checklist from foundations through N2
Statistics XP charts, study time tracking, card status breakdown
Streak & XP Daily streak counter, XP leveling system
Dark / Light Theme toggle with glassmorphism design
Multilingual UI English, Русский, O'zbek
Offline First Zero API calls — works without internet
Data Export Full backup / restore as JSON

Tech Stack

Frontend        React 19  ·  TypeScript 6  ·  Vite 8
Styling         Tailwind CSS 4  ·  Framer Motion 12
State           Zustand (localStorage)  ·  Dexie (IndexedDB)
Routing         React Router DOM 7
Charts          Recharts 3
i18n            i18next  ·  react-i18next
Icons           Lucide React

Quick Start

# Clone
git clone https://github.com/Luck1y1337/NihonGo.git
cd nihongo-roadmap

# Install
npm install

# Dev
npm run dev

Open http://localhost:5173 and start learning!


Build & Deploy

npm run build     # Production build → dist/
npm run preview   # Preview production build locally

Deploy to Netlify

Push to GitHub → connect the repo in Netlify.
Config is included via netlify.toml — build command, output dir, and SPA redirects are pre-configured.

Deploy to Netlify

Deploy to Vercel

Import the repo in Vercel.
Config is included via vercel.json — SPA rewrites are pre-configured.

Deploy with Vercel


Project Structure

src/
├── components/      Card, Modal, ProgressBar, SakuraPetal
├── pages/           11 pages (Dashboard, Roadmap, Kana, Kanji, Vocab,
│                    Grammar, Review, Quiz, Stats, Settings, About)
├── layouts/         AppLayout, Sidebar (desktop), MobileNav (mobile)
├── store/           Zustand stores (user data, SRS)
├── db/              Dexie IndexedDB schema
├── lib/             SRS algorithm, XP calculation
├── data/            Static content (kana, kanji, vocab, grammar, phrases)
├── i18n/            Translations (EN, RU, UZ)
├── App.tsx          Router
├── main.tsx         Entry point
└── index.css        Design system

Routes

Route Page
/ Dashboard — streak, XP, daily tasks, phrase of the day
/roadmap 3-year roadmap with milestone checkboxes
/learn/kana Hiragana & Katakana trainer with quiz
/learn/kanji Kanji browser by JLPT level
/learn/vocab Vocabulary decks by topic
/learn/grammar Grammar lessons with mini quizzes
/review SRS review session
/quiz Quiz mode (5 types, configurable length)
/stats Charts and statistics
/settings Theme, language, daily goal, data management
/about About the app and study plan

3-Year Study Plan

Phase Timeline Goal
Foundations Months 1–3 Hiragana, Katakana, 100 words, basic greetings
JLPT N5 Months 4–9 100 kanji, 800 words, basic grammar
JLPT N4 Months 10–18 300 kanji, 1,500 words, intermediate grammar
N3 → N2 Months 19–36 1,000 kanji, 6,000 words, EJU prep, CS vocabulary

Design

  • Glassmorphism — cards with backdrop-blur and translucent backgrounds
  • Floating sakura petals animated in dark mode
  • Gradient orbs — ambient background lighting
  • Staggered animations — elements appear sequentially
  • Micro-interactions — hover lift, press scale, spring physics
  • Mobile-first — glass bottom nav, safe area support, touch-optimized

Security & Privacy

  • No backend, no accounts, no telemetry — the app makes zero network calls at runtime.
  • Your data stays on your device — progress lives in localStorage, and SRS cards live in the browser's IndexedDB (via Dexie). Nothing is ever uploaded.
  • No secrets in the repo — there are no API keys or credentials; the project needs no environment variables to build or run.
  • Own your data — export a full JSON backup and restore it any time from the Settings page.

Found a security issue? Please open a private security advisory rather than a public issue.


License

Released under the MIT License © 2026 Luck1y.


Made with ❤️ by Luck1y

About

日本Go — offline-first Japanese learning SPA with a 3-year JLPT N5→N2 roadmap: kana trainer, kanji browser, SRS flashcards, grammar, quizzes & progress tracking. React 19 + TS + Vite.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages