PWA — easy way to Progressive Web App


Progressive Web Apps (PWA) is a technology that combines the best of mobile web and the best of mobile apps to create a superior mobile web experience. They are installed on the phone like a normal app (web app) and can be accessed from the home screen.

Users can come back to your website by launching the app from their home screen and interact with your website through an app-like interface. Your return visitors will experience almost-instant loading times and enjoy the great performance benefits of your PWA!

iWorks PWA makes it easy for you to convert your WordPress website into a Progressive Web App instantly!

Once this plugin is installed, users browsing your website from a supported mobile device will see a “Add To Home Screen” notice (from the bottom of the screen) and will be able to ‘install your website’ on the home screen of their device.

iWorks PWA allow to add shortcuts for context menu to be displayed by the operating system when a user engages with the web app’s icon.

iWorks PWA is easy to configure, it takes less than a minute to set-up your Progressive Web App!


  • General configuration.
  • Generic configuration.
  • Apple configuration.
  • Microsoft configuration.
  • Installation app on Android.
  • Shortcuts menu on Android.


There are 3 ways to install this plugin:

1. The super easy way

  1. In your Admin, go to menu Plugins > Add.
  2. Search for iWorks PWA.
  3. Click to install.
  4. Activate the plugin.
  5. A new menu PWA in Settings will appear in your Admin.
  6. A new location PWA Shortcuts Menu in Display location will appear in Appearance -> Menu.

2. The easy way

  1. Download the plugin (.zip file) on the right column of this page.
  2. In your Admin, go to menu Plugins > Add.
  3. Select button Upload Plugin.
  4. Upload the .zip file you just downloaded.
  5. Activate the plugin.
  6. A new menu PWA in Settings will appear in your Admin.
  7. A new location PWA Shortcuts Menu in Display location will appear in Appearance -> Menu.

3. The old and reliable way (FTP)

  1. Upload iworks-pwa folder to the /wp-content/plugins/ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. A new menu PWA in Settings will appear in your Admin.
  4. A new location PWA Shortcuts Menu in Display location will appear in Appearance -> Menu.


How can I translate manifest.json values?

It is only possible with WPML package.

  1. Install and activate WPML Multilingual CMS and WPML String Translation plugins.
  2. Save manifest.json data on WP Admin -> Settings -> WPA.
  3. Open WP Admin -> WPML -> String translation`.
  4. Select domain iworks-pwa.
  5. Translate strings.

How can I add a context menu?

The shortcuts member defines an array of shortcuts or links to key tasks or pages within a web app. A user agent can use these values to assemble a context menu to be displayed by the operating system when a user engages with the web app’s icon.

  1. Install Menu Icons by ThemeIsle plugin.
  2. Go to WPA -> Appearance -> Menu.
  3. Open “Menu Icon Setting” from the “Add menu items” column (it should be on the bottom).
  4. Be sure you have “Image” checked.
  5. Create a custom menu and set “Display location” to “PWA Shortcuts Menu”.
  6. Add item.
  7. Select icon – it is recommended that you use a single 192×192 pixel icon.
  8. Save the menu.

What is “Add to Home screen”?

Add to Home screen (or A2HS for short) is a feature available in modern browsers that allows a user to “install” a web app, ie. add a shortcut to their Home screen representing their favourite web app (or site) so they can subsequently access it with a single tap.

A2HS is supported in all mobile browsers, except iOS web view. It’s also supported in some Chromium desktop browsers.


November 1, 2023 1 reply
It does not have all the PWA functions implemented, but it is the only PWA plugin that works out of the box. I installed it on all my websites.Thank you very much, Marcin, for making this plugin public for free. I hope that one day PWA will be part of the core of WP.
June 6, 2023 1 reply
I'm blown away by how easy this was to setup. Who needs a dedicated app anyway, seriously! Just make a WordPress website that provides a smooth User Experience (UX), a pleasing and functional User Interface (UI), and add this plugin and you're set. Thank you so very much.
Read all 17 reviews

Contributors & Developers

“PWA — easy way to Progressive Web App” is open source software. The following people have contributed to this plugin.


“PWA — easy way to Progressive Web App” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “PWA — easy way to Progressive Web App” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


1.5.7 (2023-11-17)

1.5.6 (2023-10-27)

  • Wrong function name get_color_background() has been fixed. Props for bodhisattvac.
  • The iWorks Options module has been updated to 2.8.7.
  • The iWorks Rate module has been updated to 2.1.3.

1.5.5 (2023-07-10)

  • A check for PWA files required to work has been added.
  • The iWorks Options module has been updated to 2.8.5.
  • The iWorks Rate module has been updated to 2.1.2.

1.5.4 (2023-06-30)

  • The meta tag apple-mobile-web-app-capable has been added.
  • Trailing slashes from link and meta tags have been removed.
  • The Apple-related PWA has been completely rewritten. Props for James.

1.5.3 (2022-11-16)

  • Fixed translation string.
  • Added id property to manifest.json. Read more.
  • Added manifest.json property name limit on plugin install to 45 characters.
  • Added manifest.json property short_name limit on plugin install to 15 characters.

1.5.2 (2022-09-26)

  • Fixed issue with “apple-touch-icon” – it wasn’t used even defined.
  • Updated iWorks Rate to 2.1.1.

1.5.1 (2022-09-10)

  • Added check for a tag meta with the “viewport” value. Add it if it is missing. Props for Bert
  • Changed iWorks Rate Module repository to GitHub.

1.5.0 (2022-08-03)

  • Added Add to Home screen button to show browser prompt to install “app”. Check Browser compatibility.
  • Added google campaign track to “start_url” in the manifest.json file.

1.4.3 (2022-05-06)

  • Fixed issue with Microsoft Square Icon. Props for chickendipper.
  • Fixed issues lower than 8 PHP. Props for bamsik001.
  • Added cache for HTML head with Microsoft data.

1.4.2 (2022-04-08)

  • Added params defaults to function called in action wp_nav_menu_item_custom_fields to avoid PHP warning for an improper call. Props for vmaxs
  • Added permanent hide for menu pointer when a user visits the PWA Settings page.

1.4.1 (2022-04-05)

  • Updated iWorks Options to 2.8.3. (Fixed PHP 7.x compatibility).

1.4.0 (2022-04-05)

  • Added Menu Icons by ThemeIsle plugin integration for PWA Shortcuts.
  • Added a message when the site permalink is installed in a sub-directory – this plugin does not support it.
  • Added PWA Shortcuts Menu. Read more about PWA Shortcuts.
  • Updated iWorks Options to 2.8.3.

1.3.3 (2022-03-22)

  • Replaced cache function o proper one.
  • Fixed problem with deleting general icon.

1.3.2 (2022-03-22)

  • Fixed wrong option name.

1.3.1 (2022-03-22)

  • Added /ieconfig.xml link on debug tab.
  • Fixed long site title on the offline page. Props for tanohex.
  • Fixed missed translation domain in a few strings.
  • Improved usage of the transient cache. Props for tanohex.
  • Removed images from debug tab.

1.3.0 (2022-03-16)

  • Added object cache for settings.
  • Fixed protected $option_name_icons warning.

1.2.3 (2022-02-23)

  • Removed console.log from JavaScript files.

1.2.2 (2022-02-21)

  • Added filter `iworks_plugin_get_options’ to allow filtering plugin core configuration.
  • Added OG — Better Share on Social Media plugin integration.
  • Added plugin information into PWA script elements.
  • Added purpose “any maskable” to the biggest icon. Props for vmaxs.
  • Updated iWorks Options to 2.8.2.
  • Updated iWorks Rate to 2.1.0.

1.2.1 (2022-02-16)

  • Added a message when the site permalink is “plain” – this plugin does not support it.
  • Updated iWorks Options to 2.8.1.

1.2.0 (2022-02-15)

  • Added the ability to change the text of the offline page.
  • Added version to cache control.
  • Added WPML plugin integration.
  • Moved worker JavaScript from PHP class to separate template.

1.1.6 (2022-01-27)

  • Added screenshots to readme.txt.
  • Removed debug functions.

1.1.5 (2022-01-27)

  • Added Apple Pinned Tab Icon.
  • Added Apple Launch Icon Title.
  • Added Microsoft Pinned Site.
  • Added Microsoft Live Tile for IE11.
  • Added HTML prefetch for manifest.json.
  • Refactored options.

1.1.4 (2022-01-24)

  • Fixed typo.

1.1.3 (2022-01-24)

  • Fixed class load order issue.

1.1.2 (2022-01-24)

  • Added method_exists to check iWorks Option Class has method set_plugin.
  • Changed plugin name into “PWA — easy way to Progressive Web App”.
  • Cleared manifest.json from unwanted values.
  • Improved handle /manifest.json.

1.1.1 (2022-01-23)

  • Added configuration for Apple Splash Screen Icons.
  • Added configuration for Apple Touch Icon.
  • Added configuration for IE11.
  • Added configuration for Microsoft Tile Icons.

1.1.0 (2022-01-21)

  • Added configuration for the application name.
  • Added configuration for application colours.
  • Added configuration for application description.
  • Added configuration for application display.
  • Added configuration for application icons.
  • Added configuration for application orientation.
  • Added configuration for application short name.
  • Changed plugin name from “iWorks PWA” to “PWA — simple way to Progressive Web App”.
  • Updated iWorks Options to 2.8.0.
  • Updated iWorks Rate to 2.0.6.

1.0.0 (2022-01-04)

  • First stable release.
  • Added check for the non-SSL site – SSL is required for PWA.
  • Added “Rate” module.
  • Fixed duplicates in offline URLs set.
  • Bumped offline version to 2.

0.0.2 (2021-04-26)

0.0.1 (2021-03-18)

  • Init.