Performance comparison and tips: Cordova wrap vs PWA starter kit
-
Greetings to all Quasar devs,
First i’d like to thank everybody involved in developing this excellent framework, and i’m hopeful that in the near future i’ll be contributing to it’s progress and bug fixes as well. Heil open-source projects.
I’m building a project based on a competition dynamics, rap battles, quite popular where I live. The frontend is being built entirely with Quasar, and has been a smooth journey, although the project is quite big. From the backend point-of-view, that is where the heavy work will be done to manage a sport-like model database, but I’m still worried with the frontend’s performance, where I want to provide the smoothest UX possible for the users and aim for wide adoption.
Current things I’m doing trying to improve the UX are a clean architecture for vuex store managements, where i fetch new data from the api only when vital, leveraging from localforage the best I can, and writing clean components.
To this end, thinking of performance for ui/ux, is it better to keep the project an PWA, or do a build with cordova? From what I tested personally, it felt very close to one another. If this is the case, I’d like to leverage the things PWA provides like caching, auto-updates and higher user convertion than app markets. But if cordova is actually supposed to be faster and more “native-like”, I’d like to go down that road.
Also, what more do you fellow quasarzers recommend to improve ui/ux at a high level? I’m not quite sure I understand this offline caching a PWA is supposed to give you, and how the starter kit implements this, and that is why I use localforage for offline storage in the side, which maybe slows down the ui/ux because of the async operations…
I appreciate you guys who read through my problems and thoughts, and would be very grateful with any input and tips from more experienced developers with the insides of this framework.
Cheers
-
Why not have both
The beauty of quasar is deploying to multiple platforms form a single codebase.
Regarding PWA caching: all this does is keep in memory the static assets that make up an SPA, so you can access those offline. In other words, a PWA does not help with user initiated server interactions. So if you want your app to work offline and still register user actions somehow, you need to figure it out on your own.