(Unofficial) Android/Win10 Rokujouma Reader. Nice Things status: can not be had.

  • Google drive folder (Android builds, self-signed Windows builds, both old and new).
    Windows Store link.

    Long story short, Windows Phone's browsers don't support the web reader so there's no way to read JNC prepubs. Well, there is now, but the app is not really finished and I won't have time to work on it for a while. 2018 edit: the app is Officially Good Now. 2019 edit: development is kinda dead but the app is still pretty good. 2020 edit: still dead.

    It totally works and you can check it by installing a package from google drive or from Windows Store (available only through the link on top—lack of in-app explanations about prepub system and such makes it newcomer-unfriendly). Works on Android 5.0+, WinPhone 8 and Windows 10 (UWP).


    • Novel prepub reader with vertical scrolling layout and horizontal paged layout and a bit of customization (Inverted colors, font size, margins, full screen).
    • Somewhat unstable manga reader.
    • Some basic TTS.
    • Progress tracking integrated with JNC's. App will reopen at the same position if you restart it so even if you closed the app it takes only one click and a few (around 5 on android and 1 or 2 on windows) seconds to resume reading.
    • Fast. As fast as framework allowed, anyway. Startup may be a bit slow on android but the rest is pretty smooth and responsive. Four layers of caching etc.
    • Since things are heavily cached anyway offline reading also works if you opened the part sometime before (won't work if you opened it more than a few days ago because cache gets cleaned up).

    Screenshots (click for larger image):
    alt text alt text alt text alt text alt text

    Known Issues:

    • Paged reader and manga reader aren't very stable atm.
    • (Windows) Image downscaling is pretty poor.
    • (Android) Full screen supposed to be limited to reader but it happens everywhere.
    • Parts/chapters without volume won't show up anywhere. I blame JNC.


    • 0.0.1: Initial release
    • 0.0.2: Added log-in page, faster loading, internal changes.
    • 0.1.2: Recent parts page, scrolling reader, bug fixes, android build.
    • 0.1.8: Performance improvements, clickable/zoomable images, slightly better layout for parts/volume lists.
    • 0.1.9: Performance improvements (?), updates to work with updated API, experimental section (full screen, TTS, 90%->100% update).
    • 0.1.10: Fixed issues with horizontal reader and multiple accounts. New layout for volume lists.
    • 0.1.11: Log in with username, small layout and internal updates.
    • 0.1.12: Fixed issues with TTS and some crashes.
    • 0.1.13: Fixed issues with caching, upgraded horizontal reader.
    • 0.1.14: Got rid of deadlocks introduced in 0.1.13
    • Lots of internal changes, hardly anything noticeable from user perspective. Horizontal reader is faster.
    • 0.2.0: Manga support, half-working in-reader menu.
    • 0.2.0b (uwp-only): Fixed volume's list which was consistently crashing
    • 0.2.1: More stable and faster manga reader, other minor stability and performance improvements.
    • 0.2.2: Unbroken manga, updates via alternative API, series list page.
    • 0.2.3: Version for MS store, same as 0.2.4 but with some experimental features turned off.
    • 0.2.4: Bug fixes, Android's theme explicitly set to dark.
    • 0.2.5: Bug fixes, settings bar in the scrolling reader.
    • 0.2.6: Recently read list, customizable login TTL.

  • Translators

    @_08 Cool!

    If you need help implementing a login page so people can read other parts, PM me.

  • @sam-pinansky The hard part is what comes after login. Other series won't work that well with current volume list layout and I'd need to make a list for recent parts/favorite series etc. which is a bit complicated. There are non-UI things as well but those are simple enough.
    After all, this is a pretty big step to do, so I decided to polish Rokujouma-only version before moving to other series.

  • Small-ish update: there's a login page now which unlocks the rest of JNC series and access to members-only parts. Reading progress is synced but isn't shown anywhere (I plan to make it visible on the list of individual volume's page and recent parts page but those don't exist yet). Part loading is much faster now. Network interaction is faster as well, though it's a bit buggy (fixed in later builds).

    App is available in store through direct link. Submission took six days, hopefully it won't take that long next time. I fixed a number of minor bugs and did useless additions by now, expect a minor update soon.

  • Translators

    @_08 Oh, FYI if you want your app to get the list of parts for the "launch titles" special, the way I fixed the bug you pointed out is a bit of a server side hack: It tests for the .where.and query and if it exists and the series has the override expired flag, it overwrites the query with just where: {seriesID: ID},
    if you do some query without the "and" logic it won't trigger the hook.

    In the future we'll fix this on the app side, but for now this makes it work. Depending on how your app queries the back end you might have the same issue our app once did.

  • @sam-pinansky The only server-side filter I use is filter by uploading date to separate old/new records for better caching (old retain e-tag and get pulled from cache while new are pretty fast to update), so the app should be fine as long as that works. Expiration gets checked on client. I don't need expired parts that much, but things are pretty fast and cheap as they are now (except the part where request for all parts takes like 4 seconds on a server to complete - not perceivable at client's side but potentially bad for server if it actually takes 4 seconds of its resources).

  • Translators

    @_08 It's definitely getting a little heavy to return all parts. There's various optimizations I can do to improve the speed of that like not include all the part metadata by default or cache some of the dynamically generated properties, etc.

    The easier solution for the short term is just split up the requests on the client into paginated chunks, and to prevent hammering the backend enforce some kind of part limit.
    All in good time.

  • @sam-pinansky Pagination won't work well because the point was to request the whole thing to be able to instantly return the list of parts and volumes for any given volume or serie as soon as user user clicks on it, without any network interaction.
    If it ever becomes actually necessary I can increase time between "heavy" updates without hurting usability (it's set to whenever user navigates but only if 30min passed after previous update, "light" updates are after 30sec) but even now it won't request much more than official app and I'm like the only one who uses it anyway.

  • Well, seems like I'm a bit late for the party.

    I decided to finally finish and publish an unofficial JNC reader of my own and just finished it today 🤔

    Oh well.

  • @reyth No party here – stats from winstore and such are extremely low. Development is slow as well because I don't have time and app does most of things I needed.
    The new version is in the process of submitting, though.

  • I uploaded the new version and android build to the google drive. It should available through windows store as well by now.

    Added recent parts page and scrolling reader mode. Plus some minor performance improvements and bug fixes.

  • Premium Member

    First impression of the Android build is pretty positive, yay night mode!

    It seems to keep track of the last read position better than the official app. I jumped back in the official app to see what part of VRMMO I was reading so it lost the place and I had to manually swipe to the percentage to get it back. This app however opened that part to where I was straight away.

    Might be the web reader is better at that than the official Android app and this app is more directly using the web reader?

  • @smashman42 Reading progress is stored as a number between 0 and 1 everywhere, but interpretation is different. In my app it corresponds to top paragraph (first character of first visible paragraph divided by total chars) while web reader and official app is something like page number divided by total pages (even in scrolling mode). Latter is obviously less precise and it also depends on page layout meaning your position will drift if you change font, reader's size or screen orientation.
    Unrelated to precision, the feature is totally broken in the official android app right now.

  • Premium Member

    I see there's a newer Android build on the Google Drive folders than the one I started using.

    Is there a changelog at all?

    Is all bug squashing Windows only so the Android ports just get any new features if any?

  • @smashman42 I silently uploaded 0.1.8 and listed most of changes in the first post. Android one had a bit more updates in the UI and Windows one got some fixes for actual crashes and memory leaks (the side effect was broken text alignment and I still haven't done anything about that so it never got uploaded anywhere).

  • Premium Member

    Sorry, I didn't see the changelog at the end of the post. Thanks a million for making this thing!

    0.1.8 on Android is pretty nice, I especially like the browsing for parts of a volume page - for any volume over about 10 parts I used to have to switch to landscape to see all the part numbers & make sure I was choosing the right part, now it is much easier on the eyes to see what is what.

    The actual reader part having a "next part" button at the bottom is fantastic, especially for binging on catch up months. No more jump back "crap, what part was I reading again?" then jumping in and out to check.

    Got around to loading the Windows version on my laptop, but primarily use the phone to read so haven't done more than log in & jump around the UI to check it. Now I have a "dark mode" PC reader, I might find myself using it for the new parts as they come out & keep the phone for Rokujouma & catch up titles.

  • Premium Member

    Already posted to the "Report App Bugs Here!" section but I figured I would also put something here since it is relevant to the unofficial app.

    First I want to say that I have been super happy with this app. Having a "Night mode" is amazing and is something that is sadly missing from the official app. I really appreciate that this app was made and am excited to see some more development on it.

    Unfortunately, the unofficial app stopped updating with the latest parts that I noticed had already released on the official app. I hit the "wipe cache" option hoping that would reset any corrupted data and fix the issue. Now it won't load anything at all. I just get a "Loading... Please Wait." prompt just above the setting section. I have tried uninstalling and reinstalling as well and I see the same thing. I can post a screenshot if necessary.

  • @commandojones It's been broken for a while. API slightly changed and app can't handle that well. New version can still break because of most minor changes and that's one of the reasons it's not 0.2 yet.

    Just uploaded fresh 0.1.9 version. In addition to API stuff it got options for full-screen, TTS and 90%+ -> 100% completion update (to compensate for old official app bug).

  • Premium Member

    Was the Windows version different to the Android version? Because it kept working & I never noticed it break like the Android version did. (I suppose it could have updated itself via that Windows store?)

  • @smashman42 It's still at 0.1.2 because 0.1.8 was more about android stuff and it kinda broke text alignment on Windows. I uploaded 0.1.9 to google drive but I probably won't update the package in the store until 0.2.

    0.1.2 still works because it's making simpler (and ~40% slower) requests to API.