Goal: Allowing long distance cyclists to use the app with the least amount of data usage
Long distance cyclists can't spend too much money on mobile data, so data shouldn't be loaded again and again every time a user opens the app. Preferably, the data should be cached, and only new data should be downloaded. Also, in many countries accross the globe, there isn't always a strong connection, but users should still be able to use the app. Therefore the data should be accesible offline.
What's stopping us?
A few tests have been made to allow caching. In the root folder "backend" we're already able to retrieve the landmarkers both during developing and production mode, making use of Heroku. See for example this link https://cycle-planet-backend.herokuapp.com/markers. With Axios, we're able to turn this json format to visible landmarkers.
There are a few uncertanties/issues:
I'm not sure how stable this method will work with the Cordova apps.
A few caching strategies can be applied. But I'm not sure which one to apply. For example, the landmarkers should be cached, but when a new marker is added, it should appear directly (at least on the page of the user that added the marker)
For now, only landmarkers are stored in Firebase Firestore. The code for this database is written and can be re-used. A lot of other data (users, country information, posts, pages) are stored in Firebase Realtime database. I'm not sure how the code should look like to retrieve data from this database into Heroku.
Besides, before we start working on this issue, we should ask ourselfs what are the best methods for the future? Should be stick with Firebase, Heroku, Workbox?
And how to deal with security? If the data in Heroku is stored public, anyone can simply copy the data. Especially the user-node, as mentioned in #1, needs attention.
Goal: Allowing long distance cyclists to use the app with the least amount of data usage Long distance cyclists can't spend too much money on mobile data, so data shouldn't be loaded again and again every time a user opens the app. Preferably, the data should be cached, and only new data should be downloaded. Also, in many countries accross the globe, there isn't always a strong connection, but users should still be able to use the app. Therefore the data should be accesible offline.
What's stopping us? A few tests have been made to allow caching. In the root folder "backend" we're already able to retrieve the landmarkers both during developing and production mode, making use of Heroku. See for example this link https://cycle-planet-backend.herokuapp.com/markers. With Axios, we're able to turn this json format to visible landmarkers.
There are a few uncertanties/issues: