laz08 / KanaQuiz

A simple app to quiz the user on identifying Japanese characters.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

KanaQuiz

GitHub release GitHub license

GitHub issues GitHub pull requests GitHub commit activity

Codacy Badge Build Status codecov

Are you trying to learn Japanese, but can't seem to remember the pronunciation of the basic Hiragana or Katakana character set?

This application is here to help. It will test your knowledge, and drill the basics into your head. You can select which of the twenty different groups you wish to test yourself on. Allowing you to customize based on your skill level. Because we can't learn all this stuff at once. Records your daily progress, so you can know how much you've improved over time. Also includes a reference screen that can display all kana you're currently working on, just to remind you.

Open source and ad free.

This application is in a state of constant development. Any additional feature requests can be sent via email, or submitted as an issue here, on GitHub. If they are appropriate, they will likely be added to the next release.

Get it on F-Droid Get it on Google Play

Feature set

  • Supports Hiragana and Katakana character sets
  • Ten different character groupings for each set, allowing a gradual progression through the characters
  • Can answer questions by entering them using the on-screen keyboard, or as multiple choice questions
  • Built-in kana reference sheet
  • Supports both digraphs (ひゃ, みゅ, リュ) and diacritics (が, ぴ)
  • User can select app behaviour on an incorrect answer from three different options: retry until the correct answer is given, show the correct answer and move on, or hide the correct answer and move on
  • Support for the three major romaji systems: Revised Hepburn, Nihon-shiki, and Kunrei-shiki
  • A daily log and line graph will show your progress over time
  • Dynamic AI chooses the kana you have the most trouble with
  • Vocabulary support with Kanji option
  • Enhanced multiple choice answer selection

Upcoming features

NB: The following features have no planned release date, or guarantee of release.

  • Multiple fonts
  • Obsolete kana option
  • Finer question selection feature
  • User-made question lists
  • Furigana option
  • Export logs and preferences
  • Pronunciation Guide
  • Number questions
  • Reverse questions mode (questions in English, answers in Japanese)
  • Proper kanji support with kanji questions
  • Support for kun'yomi and on'yomi-based kanji questions
  • Limitation alerts, either by time, or number of questions

Code Analysis, Continuous Integration and Test Coverage

Code Analysis Service Badge
Code Climate Maintainability
Codacy Codacy Badge
CI Server Badge with status My Review
Travis CI master:
Build Status
develop:
Build Status
★★★☆☆
Mostly automated. Handles Android pretty well, but emulation support is limited to Android 5.1 (API 22), at the latest.
Circle CI CircleCI ★☆☆☆☆
Pretty good, but does not handle Android emulation. The only way to run Instrumented Tests is to take advantage of Firebase Test Lab remote testing, which has problems with automated result collecting, unless you're willing to pay for a results bucket.
Codeship master:
Codeship Status for theblackwidower/KanaQuiz
develop:
Codeship Status for theblackwidower/KanaQuiz
★★★★☆
Highly customizable. Build scripts can be written like any Linux Bash script. Even includes a special debug mode, allowing direct access to build environments through SSH, where one can experiment with build commands in the environment they run. However, it currently seems to have a problem with Android emulators, where builds will occasionally fail to install, but work on retry. Don't know what's going on.
Semaphore master:
Build Status
develop:
Build Status
★★★★★
Highly customizable. Much like Codeship, build scripts can be written like any Linux Bash script, and it's very user friendly. Includes a special 'Launch SSH' feature to allow direct access to build environments through SSH. Also, unlike Codeship, it automatically runs builds on pull requests.
Coverage Reporter Badge with percentage My Review
Coveralls master:
Coverage Status
develop:
Coverage Status
☆☆☆☆☆
Only reports on unit tests, because they will not accept more than one report, or provide utilities for merging.
Codecov master:
codecov
develop:
codecov
★★★★★
Best report interface. Submission utility intuitively collects and submits reports with a single command, and site itself is intuitive and complete.
Code Climate Test Coverage ★★★☆☆
Bundled with code analysis service. Submission utility can convert reports to JSON, and merge as many JSON reports as you like.
Codacy Codacy Badge ★★★☆☆
Bundled with code analysis service. Submission utility allows you to submit multiple reports, so it's ideal for parallel testing.

Branching Model

I'm using the develop branch for main development and experimentation, as well as readme and privacy policy updates; and the master branch for releases.

Mainly, the branching model I'm currently experimenting with is inspired by this blog post. But I am altering it for my own purposes.

Translations

This application is currently only available for English language speakers.

If you are multi-lingual, and wish to assist this project by volunteering translation services, you can submit the changes in a pull request, or via email.

If you wish to submit a translation as a pull request, please use Android Studio's built-in Translations Editor.

If you don't wish to go through the hassle of installing Android Studio, you can use this strings.xml file as a template, and place it in a new directory called /app/src/main/res/values-[language code]/ with the ISO 639-1 language code. The various string tags contain elements that need to be translated. Be sure to place the name of the language you're translating as well as your own name, in the field marked translator_credit. You can also place the URL to your GitHub, Twitter, or other social media profile or personal/professional website in the field marked translator_credit_url.

If you don't wish to bother with pull requests, using the template listed above you can also submit your translation through email to theblackwidower@gmail.com, with the subject "KanaQuiz Translation".

I'll also ask, if possible, for any translators to also update the vocabulary.xml file by replacing the English answers with answers in their own language, and insert it into a language-specific directory (app/src/main/res/xml-[language code]/), so it'll be automatically included as part of the translation package.

If you require any assistance, please do not be afraid to email me. I appreciate the assistance from anyone wishing to volunteer their skills to help with this project.

About

A simple app to quiz the user on identifying Japanese characters.

License:Apache License 2.0


Languages

Language:Java 100.0%