Loading...
 
Skip to main content

Progressive Web App

This is an experimental feature. It works for the happy path, but there are certainly many things that don't work well as it hasn't been used in production on a large project. If you need this for a project, please contact Marc Laporte.

While this feature was first started in Tiki21, you should be using the latest stable version to make sure to get the latest fixes.

Progressive Web Apps (PWAs) are web apps that use service workers, manifests, and other web-platform features in combination with progressive enhancement to give users an experience on par with native apps.


More info: https://en.wikipedia.org/wiki/Progressive_web_application

Scope

This permits (at first) offline access to wiki pages and tracker items, and even to submit tracker items offline which are added when user gets back online.

For now only wiki pages (view) and trackers items edit (new or updates) are available on offline. The pages are cached when visited.

This is an experimental feature. To make it work properly please ensure the following settings:

  • HTTPS is used;
  • SEFURLs feature is disabled.

 Warning
For PWA to work and allow tracker items edit, CSRF tokens are bypassed. If there are any security concerns, then PWA feature should be disabled.

Get started

To get started you have to enable the Progressive Web App mode if it's not yet:
Just go under Settings -> Control Panels -> Features, search for "Progressive Web Application Mode" or you can use the Search Preferences option, and enable it.
If a message saying "A Tiki package is missing: npm-asset/dexie" appears, just click on the missing package, and you will be prompted to install it from Tiki in the browser.

How it works

The context here is that we want to insert and update items in a tracker through a form (tracker form) when we are offline, and the data will be sent later when we get Internet access again.

Inserting

Just open the page with the form, fill in the form and click Save. It's as simple as that. You will be seeing in real-time the increase of your data in terms of number of "requests" in the bottom-right corner of your page.
When you get Internet access again, you can now submit your entered data while offline by clicking the "Sync" button in the bottom-left corner of the page (next to the number of requests), and it will be synced and saved in the tracker

Updating

To update a previously entered item, you just need to find it click on it, and update the desired information. Once you're done, you submit and again you will see the number of your requests increasing
And when you are back online again, click the "Sync" button and let it do the magic!

So, with the Progressive Web App mode feature, no need to stress out again when you need to work when or where there is no internet... As a matter of fact, you will enjoy being offline 😉

Code commits

These are the initial code contributions:

See also

alias

PWA | Progressive Web Apps | Enable-Progressive-Web-Application-Mode | Enable Progressive Web Application Mode