Jisho Tomo is an offline-first Japanese <=> English dictionary Android app.
The user is able to browse all of the entries in the dictionary, which are loaded one page at a time from the on-device database using Jetpack Paging.
Search is implemented as full-text search (FTS) with Room (read the blog post!).
The detail view is written in Jetpack Compose.
The app's architecture is MVVM with coroutines.
The app contains both unit tests and Espresso UI tests.
There is a companion Rails app also on GitHub but it's a bit of a mess. It was designed to produce the .sqlite file that is present in this repository.
This app uses the JMdict dictionary files.
These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's (license)[http://www.edrdg.org/edrdg/licence.html].
JLPT data is from Jonathan Waller's site, which is provided under a Creative Commons license.
Jisho Tomo was created as part of the Android Developer Nanodegree program by Udacity and Google.
If you have any questions about the app, please get in touch!