Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PWA vs native readers #112

Open
benoit74 opened this issue Nov 10, 2024 · 2 comments
Open

PWA vs native readers #112

benoit74 opened this issue Nov 10, 2024 · 2 comments
Labels

Comments

@benoit74
Copy link
Collaborator

Now that pwa.kiwix.org has great support for Android / Firefox (in addition to Chrome) - kudos @Jaifroid and maybe others - it looks to me that the difference between native apps (at least on iOS / Android) and pwa.kiwix.org is getting smaller and smaller.

See https://www.reddit.com/r/Kiwix/comments/1gi310s/kiwix_pwa_enhancements_with_firefox_and_android/ for details about the announcement.

Given the significant costs we have to maintain native Android / iOS apps and our limited budget, my (very naive and open) question is what is left missing on pwa.kiwix.org which justify to continue investing in native apps? I'm pretty sure we are not yet at the stage where we can abandon native apps, but I really would like to gain better visibility on what is missing.

On a personal basis, pwa.kiwix.org is now sufficient for my very limited usage on Android.

@kelson42
Copy link
Contributor

For me it is a clear "no" for many reasons, the most important being:

  • Javascript/Typescript is just a nightmare to build "serious" software
  • One app fitting every (mobile) platform does not work well, nowhere

@Jaifroid
Copy link
Member

Thank you for the complimentary comments, @benoit74, but I agree with @kelson42 that it is absolutely essential to maintain a diverse app ecosystem. Diversity is strength! Here are some reasons:

  • Since mossroy bowed out, the Kiwix JS and PWA repos are now run solely by me, a hobbyist, with the odd bit of help from CS students who want to contribute a feature or a fix, and that's a real weak link.
  • There are a number of compromises that are needed to support reading ZIMs in JS, and those are the things I mostly spend my time working around... But without others investing significant time in the core software (e.g. libzim, which we only run an emulated version of) and many other things that feed the ecosystem because of the needs of the other apps, it would all rapidly collapse.
  • While the PWA is convenient for a "low Internet" environment, it can't be distributed on a USB stick in areas of the world with no Internet connectivity - for that, being able to install an apk, an AppImage or an .exe on PC is essential. The PWA is particularly limited on iOS due to lack of support for some APIs in Safari (this may change if Apple truly opens up iOS to allow other browsers)...
  • Although I build Electron packages for Windows and Linux which can be distributed as offline installers, I can't build a macOS version due to lack of knowledge / code signing ability / lack of Mac / lack of time. And more importantly, Electron doesn't compile to any mobile app format,

Those are just some reasons off the top of my head. And @kelson42 is right that even with the recent advances in PWA API support in browsers, there are plenty of contexts in which a single app simply cannot deliver. But as an ecosystem, our range of apps cover nearly all needs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants