BunPyro - New Android App (WIP)


I’m developing BunPyro, an Android companion app for Bunpro, with three main goals:

It’s still a work in progress (many features are lacking), but I want to get feedback early.


  • No Reviews yet! That’s what I’m working on
  • Fast and offline search (Japanese, English, Romaji)
  • Grammar point details with structure, examples, and external links
  • Furigana support
  • Dark and light theme
  • Android 5.0 and up

Planned features

  • Audio (offline and on demand)
  • Manage grammar points (add, reset, I know this, etc.)
  • Mark supplemental links as read

When the BunPro API supports them:

  • Offline reviews
  • Offline cram
  • Paths (Genki, Minna no Nihongo, Tobira, …)


Get BunPyro from the Play Store.

If you want to have more frequent updates (alpha versions), BunPyro uses App Distribution. You will receive a mail for each new version or can use a dedicated app to handle updates.



Nice application, the research mode is awesome.
I hope we will be able to copy the examples soon.


Nice app! @BunproAdmin Make getting the API ready for full reviews, studying, and the like one of your priorities! This will help us out a great deal :smile:


Just a question, is there a way to refresh? It would be amazing if there were. I got some lessons done a few minutes ago and my N2 counter is still stuck at 26.

1 Like

Hey man, you just made my day! Thank you so much for this!

Every day I’m sitting here staring half a minute and more on my phone screen waiting for the bunpro grammar page to load.
One minute every day, 365 minutes per year just waiting for the annoyingly slow grammar search. And thanks to you I can use those 365 minutes more efficiently! Thank you!

One suggestion: sometimes I copy the meaning and structure of a similar grammar points into Evernote in order to quickly compare them. So it would be nice if you’d allow to select/copy the text in the grammar structure.

A side by side “compare” feature directly in the app would be even better :smiley:

And one bug: the app doesn’t remember my settings for kana. When I turn it off and go back, it will be turned on again for the next grammar point.

  • Also it would be nice to highlight the search term in the search result list.
  • And a distinction between burned items (golden logo), not yet burned items (red logo) and not yet studied items (no logo/greyed out)
  • showing the JLPT level and SRS level in the search result list and in the grammar details is also important

Thanks for the kind words!

I’m adding that to my backlog.

Not currently, I was working on it but decided to release an early version without it. That’s what I’m working on right now :slightly_smiling_face:

Hmmmm, what kind of UI do you have in mind for comparing grammar point?

There is an option for it in the settings. But I can make the furigana toggle update this setting too. Do you think that would be better?

Thank you for this feedback! Will work on that.

1 Like

Just very simple: in the grammar list, a long tap on an item will show checkboxes in front of them. After selecting some items, I can tap a button “compare” in the top or bottom of the screen. Then the comparison screen opens, which is just all the selected grammar points (with name, meaning and structure) one after another (from top to bottom) divided by a horizontal line or such.

Having the multi-select checkboxes could also be useful for future features like “mark all as known” or “add all to reviews” etc.

Another feature request: Please let the JLPT number in the grammar search expand/collapse all grammar points within. For now it always shows N5 first, so it would be good if I can tap it to hide all N5 + N4 … grammar points to quickly see N2 etc.


I don’t see an option for hiragana in the settings. And yes, I’d prefer to switch it globally in each grammar point, that makes definitely sense. When I disable it in one grammar point it doesn’t make sense that it’s enabled in the next. So it should be a global setting.

1 Like

I see, thanks for the explanations :+1: . I will add that to my backlog, but it might take a while before I get to work on that specific feature.

This won’t take long, so I’m going to include it in the next version :slightly_smiling_face:

Oh, sorry, I thought it was already available, but it’s not in the PlayStore version yet.
I will make the toggle save this setting.


The feature to type in romaji (e.g. “koto” and the search finds it as kana (“こと”) is great! So I don’t even need to switch the keyboard all the time.
Some grammar points will not be found though. For example, typing in “kaneru” doesn’t find かねる. I need to use kana in order to find it.

One more suggestion: there’s no back button next to the grammar point name (after you tapped on a grammar point in the list). Users need to use their phone’s back button in order to go back to the list which can be a bit inconvenient.


Nice! How about making it open-source, so that we can all work together on this? :slightly_smiling_face:


Amazing, the current Android app is quite buggy for me, so an alternative would be great!


Happy that you like it! Thanks for bug report, just found the issue and fixed it. Will be available in the next release :+1:

But isn’t that like the purpose of this button
I see, I will add up navigation buttons wherever I can.

Right now I want to keep BunPyro as a personal project.
I might open source it in the future, if I do, I’ll make sure to mention it to you.
In any case, thank you for your proposal!

1 Like

Depending on how users hold their phone and if it has soft or hard buttons, it can be much more convenient to have a back button on the top left next to the grammar name.

One more suggestion: the progress bars for the JLPT levels could have a percentage on each bar (“68%” etc)

And here in the scripts thread are some more nice ideas of things that could be included by using the api, i.e. the review heatmap.

1 Like

Wait, did BP update the API?

1 Like

I can add that as an opt in thing I think, I like the way it is now :slight_smile:

The same features as these scripts could be added to the app, but I already have too much to do right now, so I’m just going to skip this for now :sweat_smile:

There is a “private” API that I don’t have the documentation of.
It’s the API that the semi official iOS and Android apps use.
Since both projects are open source on github, I took a look at which endpoints they’re using (here is the relevant file of the Android app).

For BunPyro, I use some endpoints of the public API, but most are from the private API.
If you’re interested, I have a very raw document about the private API


I’ve just released version 0.3.0 based on your feedback :slight_smile:
It should already be available on the Play Store.

Changelog 0.3.0


  • Menu to copy an example’s text
  • Setting for the furigana display
  • Manual sync option
  • Search headers to separate romaji search
  • JLPT tags in the search results
  • JLPT filters for all grammar
  • Highlight query in search results
  • Navigation icons on most screens


  • Fixed some search issues with romaji
  • Fixed some color issues on SDK 21
  • Fixed the lessons progress being cropped
  • Fixed multiple crashes
  • Fixed some raw html being displayed

@someone2020 you should now be able to manually sync.
It’s still rough and takes quite a while to sync. I will improve this if I can figure out a better way to use the Bunpro API.

@Anthropos888 this version contains many little improvements based on your feedback. Thank you for your help so far!


Great work, want to try it out. But, I keep getting a “something went wrong on our side” error after the grammar tries to load. I’ve tried with Wi-Fi on or off, and am using Android 10.


Thanks, I just tried it out and it’s great! It’s really like an offline dictionary for grammar and I use it frequently when I come across some grammar etc. during reading. So it’s really useful even outside of Bunpro.

Here some issues (just my personal opinion, others might see it differently)

  • the bold highlighted words are great, but I’d prefer it even in a different color to have a better distinction from the rest of the text
  • the sync takes around 30sec, so a dialogue box or a progress bar and a “done” message would be nice
  • the navigation back button in the grammar details is very handy but not aligned with the grammar point name (it’s 20px above)

This seems to be a bit buggy. After searching for a grammar point it doesn’t work anymore. The window pops up for a ms and closes instantly. Maybe it’s easier and more intuitive to just let the list expand/collapse on tap on the JLPT level header?

Anyway, keep up the great work :+1: