# WaniKani Kanji SRS A **Spaced Repetition System (SRS) app for learning Japanese kanji** using WaniKani’s API. Test your **kanji meanings, readings, and recognition skills** on your mobile device. --- ## 📱 Features - Quiz modes: - **Kanji → English**: Guess the meaning of the kanji. - **English → Kanji**: Match the meaning back to the kanji. - **Reading**: Practice **on’yomi** and **kun’yomi** readings. - **Multiple-choice answers** with dynamic distractors. - **Score tracking** for correct and attempted answers. - Clean and responsive **Flutter UI** with animated kanji cards. - Fully **offline-capable** once deck is fetched and cached. - **Customizable themes** (dark mode by default). - Settings page to manage your **WaniKani API key**. --- ## 🛠️ Tech Stack - **Flutter** for cross-platform mobile development (Android/iOS) - **Provider** for state management - **Shared Preferences** for storing API key and settings - **Dart** for core logic - **WaniKani API** for fetching kanji data --- ## ⚡ Installation 1. Clone the repository: `git clone https://git.crylia.de/Crylia/wanikani-kanji-srs.git` `cd wanikani_srs` 2. Install dependencies: `flutter pub get` 3. Run on a device/emulator: `flutter run` 4. Set your **WaniKani API key** in the app’s settings to fetch your deck. --- ## 🔧 Usage 1. Open the app and enter your **WaniKani API key**. 2. Select a quiz mode: - Kanji → English - English → Kanji - Reading 3. Tap on the multiple-choice options to answer. 4. Your **score** is displayed at the bottom. 5. Progress is updated automatically. --- ## 📦 Build APK To generate a release APK: `flutter build apk --release`