A lite open-source mobile version of your favorite vndb.org website.
This project, VNDB Lite, is not an official app advertised by the official website itself. It is simply just a personal project that the developer himself found interesting, and worthwhile expanding his skills and knowledge in mobile development.
This is a very new project with a lot of potential to improve. If you'd like to help out, please give it a star 🌟 and share it with the others! You can also jump in and start contributing right away! Just fork the project and suggest any changes you'd like me to consider. That'll be very helpful for a junior self-taught developer like me.
And hey, I'm always open for donation!
Currently, this app only supports for Android. I am unable to test the app for IOS platform, since I don't have any apple device. Contact me if you want to help me testing for IOS platform! :D
This. is. my. first. app.
- I have never touched any real software development before in whole my life.
- I have zero knowledge about it (I came from Cybersecurity field) and I don't go to college to learn any of it.
- I am still learning, and I love learning non-formally.
- Did you know that in 2024 I consumed for at least 2~3 tbsp of coffee a day for around 250± days straight?
Consider donating me so I can feed Kenz (my dog 🐕) :vKenz died recently just before 2025. One of the worst year ending in my life.
Without any knowledge whatsoever, I took the risk to create one app designed to help people —especially weebs out there— to be able to explore VNDB effortlessly and enjoyably. I'd like to offer them a better UI and UX while maintaining the same functionality as the web itself has. And it is a fact that it is not easy. It is really hard.
If only I thought of a better project... or maybe a better framework... or maybe a better laptop... or maybe a better life...
But what makes me keep pushing through despite of how hard it is, is that I have a stubborn guy inside of me that kept telling me, "Do not to give up" and, "Finish what you've started". Despite of how many life problems I encountered while focusing on this project, I keep going on, and on. Seems like at some point I have become a robot that only work, work, and work. What a life.
June/2024
From around June 2024, I learned flutter, I've never really learned all the fundamentals, just enough for me to feel quite confidence, and then finally take a courage to move forward to typeflutter create
in my commandline.
August/2024
Around August, I've finally finished the app with all the limited features I could think of. Not surprisingly, after installing the app in my old ancient Oppo android phone, it only takes several minutes for my phone to have a fever, insane lag, bad UI, and obviously bad UX, even when testing with other phones. At that time I thought, "Hey, the world is already advanced! So maybe I don't really need to pay attention about runtime and stuff like that right? Because google said the programming language is fast!". Regret +1Sept/2024
Learning more about runtimes. Finally realized how dumb I was. Then I restructured the code, and trying to find those lines of code that causes the lag, which took me quite a long time since I wasn't really sure whom did what... Dude, I need better comments and variable names. Regret +1Oct/2024
I forgot what date exactly, I don't really count on dates, the moment I focused onto something, I really stopped thinking about things other than that something, there's a high tendency of that to be happen. At that time, I focused myself to learn about clean code, best practices, and effective design. I reworked the app again. Yet, it's still ugly. I'm not satisfied... Maybe I need to learn more about state management which the topic I skipped for months...? Regret +1Nov/2024
Finally learned about clean architecture, state management, error handling, and other stuff such as a little bit of github (Yes I'm total beginner). Then again, restructured the whole app structure once again... Cool. Can you imagine how hard it is being someone with zero experience, and no guidance in the software/mobile development field? I have to re-code the app for 4 times in total. Yet, giving up is never an option.Dec/2024
Learned more about github, still not a master. But I finally, at last, reached the publishing stage of the app. Lots of experience, and lots of pain. But hey, thankGod I survived.It was all for fun at first... Yet many times, I am feeling that maybe I should give up, and work on something else that is more... You know? More towards the society, not for weebs like this?! But, again, the stubborn guy inside me, won't let me be. Maybe that's because being a weeb is simply just one underrated persona in the society, so providing them one app for the ease of use for their hobby could be meaningful for them. Meaningful for a small part of the society.
No matter how much I want to complain, reality is reality, I spent almost half a year just to develop this app. It is tiring, and I am dumb enough not to rest, nor move my body to stop the pain. But that's the price of being stubborn.
Overall, I should say, that I am quite proud of myself not giving up in the first month. I love learning. I learned a lot from developing, and I will see this as a stepping stone to reach a higher level in the field so that in the end, I could make more money to feed my family. It is quite a long journey. But again, giving up is never an option. I will continue learning, learning, and keep learning! ...But first I need a vacation.
Thus, the history of this app, and my little journey in the mobile development field.
It is a website that houses a large public database of Visual Novels, hence the name stands for Visual Novel DataBase (VNDB). You can learn more about the website itself here.
Do read the disclaimer above first please.
This app is still in development, and is heavily inspired by Tachiyomi (A digital comic reading app), someone from reddit which I forgot, and a picture I found from the internet which looks really cool! That picture gave me a lot of inspiration. I tried to make one like that, but I ended up having a lite version and a sleep apnea instead.
If you ever use Tachiyomi or similar app, then I assure you can adapt fast with this app's UI.
VNDB Lite is currently released for Android only, and it only supports Android 5.0+.
Unfortunately and currently, I don't have any IOS device to neither build nor even test the app. But as the framework (Flutter) itself supports cross-platform, you can build yourself the app from the source code for your own specific platform, and then test it.
As the name stated: Lite, this app does not cover the entire feature you might found in the original website itself, though, some of the fundamentals are covered in this app.
Here are the features:
-
Up to 11 VNDB official themes
-
Previews of VNs (Based on latest user collection, and Top-bys)
preview.webm -
Advanced search
adv_search.webm -
VNDB latest statistics chart (I know it's ugly, but at least it can spin)
-
Local collection
-
Double-click to censor/uncensor cover 👀
-
(งツ)ว And many more...!
Warning
VNDB Lite Synchronization does not support the following:
- Custom status other than the built-in ones, such as:
playing, finished, stalled, dropped, wishlist, and blacklist
. Other than that will be considered invalid and will not be synchronized. - A VN item which has multiple status on it, such as:
playing
, anddropped
in a single item, that is not fully valid. Synchronization with VNDB Lite will only take one from the two. But any of the built-in status withvoted
is valid. - Saving the changes made from the cloud to the local once successfully synchronized. VNDB Lite's synchronization is local-oriented, so once user synchronized, any change from the cloud, such as editing an already existing item, will not be tolerated, and will be overrided instead by the local existing ones instead the moment user synchronizing again. The same thing happens when deleting an item from the cloud, once synchronizing again, if the item still exists in local, then it will go back to the cloud (in a form of a backup). The only thing that local tolerated with cloud changes, is that adding a new item from the cloud, and that will be saved in the local.
- The ability to immediately synchronize lot of vns (probably 60+) at once in a single synchronization. There are times when your cloud vns are not fully synchronized in the local collection after the first time synchronization, especially if you've lots of vns in your vndb collection. Make sure that after a short delay, try to synchronize again until it fully indexing all of your cloud vns in the local collection.
Consider changing your collection via vndb.org first to make sure that all of your VNs are valid when synchronizing using this app.
Dev note:
- No, there will be no localizations. – =͟͟͞͞ =͟͟͞͞ ヘ( ´Д`)ノ I can engrish
Please head to the release section to find the latest version of the app.
Make sure you have flutter framework v3.4.5+ installed.
- Clone this repository
git clone https://github.com/Daniel-C-J/vndb-lite.git
- Open your terminal and
cd
to the root path of the repository - Type
flutter build --help
then head down to theAvailable subcommands:
section, you'll be able to found the platform specific options to build the app. If you want to just build for android then simply typeflutter build apk
. - The output path is usually in
./build
, for android specifically it is in./build/app/outputs/flutter-apk/
alongside with the sha-1 hash. - And you're done! Congrats 🎉!