-
Data should be stored offline: Currently, the web client stores data locally on the machine accessing it. Sync should work mostly as it does on mobile and desktop.
- Edit: This assumes that the server & related infrastructure is secure. At present, loading the web client while connected to the internet uses the latest version of the code from GitHub pages.
-
Possible change — use the cached version of the web app by default: At present, a copy of the web client is stored locally. This local copy is currently only used when offline or if the server seems to be down. However, it could instead default to the offline copy and provide a GUI for installing updates.
I could see this change having a few benefits and drawbacks:
- Benefits:
- If this is implemented, a user would get an "update available" notification (like on desktop). The user would then have the option to review the GitHub pages deployment before installing the update.
- Users would still have access to locally installed copies of the web client, even if Joplin stops hosting it.
- Drawbacks:
- More code to write and maintain: This would require additional logic that checks for and prompts a user to install an update.
- Edit: As stated below, this still requires trust in the version of the app first fetched from the server.
Would it make sense to make the web app prefer an offline copy of itself?
Edit: Reformatted & added summaries.