[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f55F_PkECdtiXyW4MdjzYJ43CpsxqM8fBfisoSAYBZh4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":138,"fingerprints":367},"progressive-web-apps","Progressive Web Apps","1.0.1","Rock Solid","https:\u002F\u002Fprofiles.wordpress.org\u002Fmikewire_rocksolid\u002F","\u003Cp>Progressive Web Apps are user experiences that have the reach of the web, and are:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Reliable\u003C\u002Fstrong> – Load instantly even in uncertain network conditions.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fast\u003C\u002Fstrong> – Respond quickly to user interactions with silky smooth animations and no janky scrolling.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Engaging\u003C\u002Fstrong> – Feel like a natural app on the device, with an immersive user experience.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This new level of quality allows Progressive Web Apps to earn a place on the user’s home screen. More details about PWAs here: \u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>The WordPress Progressive Web Apps plugin helps bloggers, publishers and other content creators to go beyond responsive web design and ‘appify’ their existing mobile presence. Progressive Web Apps is supported on: iOS & Android. Compatible browsers: Safari, Google Chrome, Android – Native Browser. The plugin has been tested on WordPress 4.8 and later, we recommend using the latest WordPress version.\u003C\u002Fp>\n\u003Cp>The WordPress Progressive Web Apps plugin includes one FREE mobile PWA (MOSAIC) which is customizable (colors, fonts, appearance) via the WordPress admin area. The tech stack we used in building this Progressive Web App includes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>React JS\u003C\u002Fli>\n\u003Cli>Semantic UI for UI components\u003C\u002Fli>\n\u003Cli>Redux for app state management\u003C\u002Fli>\n\u003Cli>SASS\u003C\u002Fli>\n\u003Cli>Webpack (Create React App boilerplate)\u003C\u002Fli>\n\u003Cli>Babel\u003C\u002Fli>\n\u003Cli>Jest & Sinon for unit tests\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The MOSAIC PWA (available for FREE) is built with React JS. Most of the premium mobile progressive web apps available at \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes.html\" rel=\"nofollow ugc\">PWAThemes.com\u002Fprogressive-web-app-themes.html\u003C\u002Fa> are built using Angular\u002FIonic 1 or React. Each PWA comes with a “production” version, which in essence is the bundled\u002Fpackaged\u002Fminified collection of all the necessary JS and CSS files for the PWA to run correctly.\u003C\u002Fp>\n\u003Cp>Each of our progressive web apps are tested with Karma, Jasmine and Protractor (Angular) or Jest (React). We have an average of 70-80% code coverage and we’re working on improving this rate. While we do our best to catch any bugs out there, we are aware that some of them might escape us. Please reach out if you happen to come across a nasty one 😊.\u003C\u002Fp>\n\u003Cp>The FREE PWA MOSAIC available in the WordPress Progressive Web Apps plugin is the window-display of themes. You can instantly see several categories and choose which ones are of interest and focus on those. Depending on the number of displayed categories, the boxes will resize to fit all available space. It’s great for publishers that have posts spanning several categories and need a way to visually structure their content.\u003C\u002Fp>\n\u003Cp>It comes with support for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Multi-image mosaic on cover page\u003C\u002Fli>\n\u003Cli>Pages & sub-pages menu\u003C\u002Fli>\n\u003Cli>Side-to-side navigation with lateral swiping through categories\u003C\u002Fli>\n\u003Cli>Maximum 2 articles per card\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>There are dozens of mobile progressive web apps available in the PRO version: \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fbase.html\" rel=\"nofollow ugc\">BASE\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fobliq.html\" rel=\"nofollow ugc\">OBLIQ\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Felevate.html\" rel=\"nofollow ugc\">ELEVATE\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Ffolio.html\" rel=\"nofollow ugc\">FOLIO\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Finvision.html\" rel=\"nofollow ugc\">INVISION\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fpopsicle.html\" rel=\"nofollow ugc\">POPSICLE\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fpulse.html\" rel=\"nofollow ugc\">PULSE\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fghost.html\" rel=\"nofollow ugc\">GHOST\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fphantom.html\" rel=\"nofollow ugc\">PHANTOM\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Flucid.html\" rel=\"nofollow ugc\">LUCID\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fextrude.html\" rel=\"nofollow ugc\">EXTRUDE\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fvedi.html\" rel=\"nofollow ugc\">VEDI\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fblend.html\" rel=\"nofollow ugc\">BLEND\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fpure.html\" rel=\"nofollow ugc\">PURE\u003C\u002Fa>,  \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Ffuture.html\" rel=\"nofollow ugc\">FUTURE\u003C\u002Fa> & \u003Ca href=\"https:\u002F\u002Fpwathemes.com\u002Fprogressive-web-app-themes\u002Fpalm.html\" rel=\"nofollow ugc\">PALM\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Additional key features available in PRO:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Rich UI\u002FUX\u003C\u002Fstrong>\u003Cbr \u002F>\nYour users can have a cozy browsing experience on their favorite mobile device without having to go to an App Store and install anything.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Monetization\u003C\u002Fstrong>\u003Cbr \u002F>\nTake full control of your income by easily connecting the plugin with your Google DoubleClick for Publishers account.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Translations\u003C\u002Fstrong>\u003Cbr \u002F>\nThe plugin will automatically translate your mobile web app in one of the supported languages: Chinese (zh_CN), Dutch, English, French, German, Hungarian, Italian, Polish, Portuguese (Brazil), Romanian, Spanish or Swedish.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Premium Support\u003C\u002Fstrong>\u003Cbr \u002F>\nWe take pride in offering fantastic maintenance and hands-on support. Our team of friendly mobile experts makes sure technology doesn’t stand in your way.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Analytics\u003C\u002Fstrong>\u003Cbr \u002F>\nGet to know your mobile users and analyze your impact with our powerful yet simple reader-centric analytics via Google Analytics integration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Add to Homescreen\u003C\u002Fstrong>\u003Cbr \u002F>\nUsers can add your mobile web application to their homescreens making it just a tap away.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Offline Mode\u003C\u002Fstrong>\u003Cbr \u002F>\nThe application’s files are cached for offline usage together with the content. All of the categories, posts and pages that your users navigate to will be cached for offline usage.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Web Push Notifications\u003C\u002Fstrong>\u003Cbr \u002F>\nWe have integrated with the OneSignal WordPress plugin, allowing you to engage users through push notifications.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Advanced PWA features like offline mode and web push notifications are implemented using service workers and are currently available on Chrome.\u003C\u002Fp>\n\u003Cp>We enjoy writing and maintaining this plugin. If you like it too, please rate us. But if you don’t, let us know how we can improve it.\u003C\u002Fp>\n\u003Cp>Have fun on your mobile adventures!\u003C\u002Fp>\n\u003Ch3>Repositories\u003C\u002Fh3>\n\u003Cp>Here are our Github development repositories:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frock-solid\u002Fwordpress-progressive-web-apps\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Frock-solid\u002Fwordpress-progressive-web-apps\u003C\u002Fa> – The plugin files, same as you will find for download on WordPress.org.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frock-solid\u002Fpwa-theme-mosaic\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Frock-solid\u002Fpwa-theme-mosaic\u003C\u002Fa> – The Progressive Web App source, built with React, Redux and Semantic UI.\u003C\u002Fli>\n\u003C\u002Ful>\n","Use a Progressive Web App implemented with React JS to enhance the experience of your mobile users.",10,15378,90,4,"2020-01-31T02:53:00.000Z","5.3.21","4.8","5.4",[20,21,22,4,23],"mobile","mobile-internet","mobile-web","pwa","http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fprogressive-web-apps\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fprogressive-web-apps.1.0.1.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"mikewire_rocksolid",7,17150,91,223,73,"2026-04-05T01:33:56.968Z",[40,58,75,93,118],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":50,"num_ratings":14,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":18,"tags":54,"homepage":56,"download_link":57,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"pwa4wp","PWA for WordPress","1.2.0","Ryunosuke Shindo","https:\u002F\u002Fprofiles.wordpress.org\u002Fryushindo\u002F","\u003Ch3>About this plugin\u003C\u002Fh3>\n\u003Cp>To make your WordPress website to PWA, this plugin make two files, “Manifest” and “ServiceWorker” in your website.\u003Cbr \u002F>\nManifest file is a json file that has configurations of web applications.\u003Cbr \u002F>\nServiceWorker is a JavaScript file that controls PWA’s functions.\u003Cbr \u002F>\nTo start PWA, configure two files from configuration screen.\u003C\u002Fp>\n\u003Cp>You can fine-tune the cache, such as expiration date, time and URL exclusion.\u003Cbr \u002F>\nBy excluding the URLs, like a new arrival information,  data acquisition destination in Ajax, this plugin can keep PWA data fresh.\u003Cbr \u002F>\nYou can set expire time of caches, then old cache will purged after specified time.\u003C\u002Fp>\n\u003Cp>After version 1.1.2,\u003Cbr \u002F>\nMulti sites are supported.\u003Cbr \u002F>\nYou can defer the PWA installation popup shown in browser default and add your own installation button on your sites.\u003C\u002Fp>\n\u003Ch3>STEP1\u003C\u002Fh3>\n\u003Ch4>Configure Manifest\u003C\u002Fh4>\n\u003Cp>Prepare icon image file, image file must be png format.\u003Cbr \u002F>\nMake offline page, this page will cached with PWA installation and shown when PWA is offline.\u003Cbr \u002F>\nSetup manifest file from Manifest Configuration page.\u003Cbr \u002F>\nImage file will be resized to fit icon sizes automatically.\u003C\u002Fp>\n\u003Ch3>STEP2\u003C\u002Fh3>\n\u003Ch4>Configure ServiceWorker\u003C\u002Fh4>\n\u003Cp>Setup ServiceWorker file from ServiceWorker Configuration page.\u003C\u002Fp>\n\u003Ch3>COMPLETE!\u003C\u002Fh3>\n","PWA for WordPress makes your WordPress site to PWA (Progressive Web App) and makes control of PWA data caches easy.",300,9447,100,"2019-04-23T15:33:00.000Z","5.1.22","4.4",[20,55,4,23,41],"progressive-web-app","https:\u002F\u002Fgithub.com\u002Fryu-compin\u002Fpwa4wp","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpwa4wp.1.2.0.zip",{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":50,"downloaded":66,"rating":27,"num_ratings":27,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":70,"tags":71,"homepage":73,"download_link":74,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"web-manifest","Web Manifest","1.1.0","fro1d","https:\u002F\u002Fprofiles.wordpress.org\u002Ffro1d\u002F","\u003Cp>This plugin allows to create and configure a web-app manifest file (manifest.json). Web app manifests are part of a collection of web technologies called progressive web apps. Its provides information about an application (such as name, author, icon, and description) in a JSON text file. The purpose of the manifest is to install web applications to the homescreen of a device, providing users with quicker access and a richer experience. \u003Ca href=\"https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FManifest\" rel=\"nofollow ugc\">More info\u003C\u002Fa> about web manifests.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Set manifest.json settings based on the site general settings.\u003C\u002Fli>\n\u003Cli>Live preview of how your manifest’s settings will affect to your site’s appearance.\u003C\u002Fli>\n\u003C\u002Ful>\n","Allows to create and configure a web-app manifest file (manifest.json).",3963,"2017-12-18T23:02:00.000Z","4.9.29","4.7","",[72,20,22,4,59],"android","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fweb-manifest","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fweb-manifest.1.1.0.zip",{"slug":76,"name":77,"version":78,"author":79,"author_profile":80,"description":81,"short_description":82,"active_installs":83,"downloaded":84,"rating":27,"num_ratings":27,"last_updated":85,"tested_up_to":86,"requires_at_least":87,"requires_php":70,"tags":88,"homepage":91,"download_link":92,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"baap-mobile-version","BAAP Mobile Version","2.0","muthukumarnm","https:\u002F\u002Fprofiles.wordpress.org\u002Fmuthukumarnm\u002F","\u003Cp>The BAAP Mobile Version is a complete toolkit to help mobilize your WordPress site and blog.\u003C\u002Fp>\n\u003Cp>It includes a mobile switcher to select themes based on the type of user that is visiting the site, a selection of mobile themes, extra widgets, device adaptation and a mobile administration panel to allow users to edit the site or write new posts when out and about.\u003C\u002Fp>\n\u003Cp>Features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>A mobile switcher\u003C\u002Fstrong> which automatically suggests desktop or mobile presentation, but lets users switch to the other if required (and remembers their choice).\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>A set of advanced themes for Nokia and WebKit devices\u003C\u002Fstrong>, designed by \u003Ca href=\"http:\u002F\u002Fwww.forum.nokia.com\u002FTechnology_Topics\u002FWeb_Technologies\u002FBrowsing\u002FWeb_Templates\u002F\" title=\"Forum Nokia\" rel=\"nofollow ugc\">Forum Nokia\u003C\u002Fa>. These also look beautiful on Android, iPhone and Palm devices.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Device adaptation\u003C\u002Fstrong>, including the rescaling of images, intelligent splitting of articles and posts into multiple pages, the simplifaction styles, and the removal of non-supported media.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>A mobile admin panel\u003C\u002Fstrong>, that allows the blog managers to access the admin interface via a mobile device, with simplified access to the most common features such as editing a post or approving comments.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Enjoying your site and blog in mobile.\u003C\u002Fp>\n\u003Ch3>Documentation\u003C\u002Fh3>\n\u003Cp>The pack is so-called because it contains a number of discrete pieces of functionality. In theory it is possible to individually enable or disable the components (through editing the registrations at the top of the main plugin file), but the vast majority of users are expected to install the pack en masse.\u003C\u002Fp>\n\u003Cp>The pack contains the following functionality:\u003C\u002Fp>\n\u003Ch4>Mobile switcher\u003C\u002Fh4>\n\u003Cp>The mobile switcher identifies whether the visitor to the site is mobile or not, and switches between the primary WordPress theme (for desktop users) and a mobile theme (of the site owner’s choice) accordingly.\u003C\u002Fp>\n\u003Cp>It can use two approaches to identify the user as mobile. Firstly, it can try to identify if they have a mobile device based on the headers sent when a page is requested. Alternatively, it can identify whether the user has requested the site on a ‘desktop domain’ (such as yoursite.com) or a ‘mobile domain’ (such as yoursite.mobi) and deduce their intent from that.\u003C\u002Fp>\n\u003Cp>The recommended approach is a third, combined, approach that uses both techniques, and also allows users to switch between sites if the choice is not appropriate by providing a link in the themes’ footers or a widget.\u003C\u002Fp>\n\u003Cp>In this combined mode, the switcher will provide interstitial warning pages if a mobile user accesses the desktop domain or vice-versa. It will also remember their choice of preferred site through the use of a cookie.\u003C\u002Fp>\n\u003Cp>Settings for the switcher are found under the ‘Mobile Switcher’ admin page, and are self-explanatory.\u003C\u002Fp>\n\u003Cp>More detail on these switching algorithms is available in a series of articles published by \u003Ca href=\"mobiForge\" rel=\"nofollow ugc\">http:\u002F\u002Fmobiforge.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Base mobile theme\u003C\u002Fh4>\n\u003Cp>The pack contains an extensible theme that is ready for display on mobile devices. The theme is XHTML-MP compliant and scores highly on dotMobi’s ready.mobi site tester.\u003C\u002Fp>\n\u003Cp>The base theme supports all standard WordPress content, including indexes, posts, pages, archives, search results, comments and widgets. If configured, it also invokes the device adaptation process (detailed below) that ensures the posts themselves are formatted suitable for mobile devices.\u003C\u002Fp>\n\u003Cp>There are a number of simple settings that can be used to adapt the way in which lists of posts appear on the mobile theme. These are found under the ‘Mobile Theme’ admin page, which appears when the switcher component is installed (or when the mobile theme is selected as the main WordPress theme). It is possible to set how many posts appear on the home page and in archives, and how verbosely they display.\u003C\u002Fp>\n\u003Cp>Away from the posts themselves, the theme does not provide a ‘hard-coded’ sidebar and relies wholly on the WordPress widget framework. Widgets that are selected in the WordPress admin pages (and then selected to show for the mobile theme) will appear in a ‘sidebar’ below the main part of the mobile page.\u003C\u002Fp>\n\u003Cp>Since each widget adds size to the overall page, it is recommended that no more than 5 desktop widgets are enabled for the mobile theme. The ‘Mobile Widgets’ admin page also appears when the switcher component is installed (or when the mobile theme is selected as the main WordPress theme).\u003C\u002Fp>\n\u003Cp>Any standard WordPress widgets that are known not to be XHTML-compliant are slightly rewritten by the theme to make them so. However, the theme does not currently correct arbitrary widget content and the use of third-party widgets (that were designed for desktop use) may easily push the overall page out of XHTML-MP compliance and affect the user’s experience.\u003C\u002Fp>\n\u003Cp>Large widgets are not currently split or paged for small mobile devices. This may increase the load time, cost to the user, or even make the page unreadable on a limited capability device. Be aware of this when enabling large widgets on the mobile theme.\u003C\u002Fp>\n\u003Ch4>Extended mobile themes\u003C\u002Fh4>\n\u003Cp>Simply by extending the base theme, it is very easy and quick to customise the mobile theme to fit existing requirements or brand.\u003C\u002Fp>\n\u003Cp>The easiest way to do this is to re-tint the theme’s colour scheme. The colour specifications for the base theme are all defined at the top of its stylesheet. Site owners can override this palette with their own colours, named DARKEST, DARK, MID, LIGHT, LIGHTEST and so on.\u003C\u002Fp>\n\u003Cp>To demonstrate, three extended themes are available within this pack: blue, green and red. Note how they use the ‘Template:’ directive at the top of the stylesheet (and the CSS @import statement) to indicate that they extend the base theme.\u003C\u002Fp>\n\u003Cp>Of course it is also easy to extend the theme in other, more structural ways, and even adapt the template’s PHP files. However, if such changes should be done carefully to preserve XHTML-MP compliance within the markup.\u003C\u002Fp>\n\u003Ch4>Transcoding and device adaptation\u003C\u002Fh4>\n\u003Cp>When the base theme, or a theme that extends it, it used, the pack provides some features to adapt the content of the posts and pages of the blog to make them more suitable for mobile use.\u003C\u002Fp>\n\u003Cp>There are four major stages to this process, and each may be enabled or disabled independently on the ‘Mobile Theme’ admin page. These are:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Remove media\u003C\u002Fstrong> – This will remove interactivity and media elements (such as script, Flash, movies, and embedded frames) from the posts and pages. Unless it is certain that users have high-capability handsets, these types of content will stretch the abilities of their mobile devices. The HTML tags removed are object, embed, marquee, script, frame and iframe. This process also removes any event attributes (such as onClick) from the page.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Partition large pages\u003C\u002Fstrong> – This will break large blog posts or pages into smaller pieces more suitable for mobile devices. The length of each piece depends on the known memory limitations of the visitor’s device (if DeviceAtlas integration is enabled), or will default to approximately 5K in size. Contiguous sections such as lists will not be broken, and a pager will appear at the bottom of each post to allow the user to page through the post.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shrink images\u003C\u002Fstrong> – This will shrink large images within posts or pages to fit on smaller screens. The width or height constraints of the device (if DeviceAtlas integration is enabled) are used to determine the new dimensions, or they will default to 124 pixels. This functionality relies on the server having the PHP graphics library LibGD installed (as it will be for PHP 4.3 or greater). Both the original and resized images are cached locally for performance, and site owners have an option to clear this cache on the admin page.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Simplify styling\u003C\u002Fstrong> – This will remove styling elements from the posts and pages to ensure mobile compatibility. The HTML attributes removed are: align, background, bgcolor, border, cellpadding, cellspacing, class, color, height, style and width. It removes the following tags: center, font, and span (although note that the inner content of those tags remains). Finally it removes any empty, non-singleton tags that do not have attributes, such as, for example, \u003Ccode>\u003Cdiv>\u003C\u002Fdiv>\u003C\u002Fcode>.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Mobile admin panel\u003C\u002Fh4>\n\u003Cp>A user identified as mobile by the switcher will receive a mobilised version of the WordPress administration interface. The link to the dashboard is available in the standard ‘Meta’ widget, or it can be reached directly at \u003Ccode>http:\u002F\u002Fyour.site\u002Fwp-admin\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Only users with administrator status are allowed to access the mobile administration pages. Note this makes it more restrictive than the desktop dashboard, but this prevents less-authorised users from accessing it and making changes to important site settings.\u003C\u002Fp>\n\u003Cp>The following pages are available in the mobile administration interface:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Overview\u003C\u002Fstrong> – Like the desktop dashboard, this details how many pages, posts, categories and tags site owners have on the site. It also highlights how many comments currently await moderation.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>New post\u003C\u002Fstrong> – Administrators may write a new post to appear on the site. They can specify the title and the body of the post, and whether they want it to remain draft, pending review, or published. It is not currently possible to specify tags, categories or other advanced properties of the post in the mobile interface.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Edit post\u003C\u002Fstrong> – This page lists all of the current posts and allows administrators to edit them. As for the ‘New post’ page, they can edit title, status, and body. It is not possible to edit the categories or tags and so on, although existing values for such properties of the post will remain set after editing in the mobile interface. Depending on the theme, a link to this edit panel may also be available on the site itself when administrators are logged in.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Comments\u003C\u002Fstrong> – This page lists extracts of all of the comments awaiting moderation on the site. From this list, administrators can click on the commentator’s name to see the whole comment, and, by clicking the appropriate links, set the comment to be published or marked as spam. Editing, de-approving or deleting a comment cannot be performed in this interface.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Switcher\u003C\u002Fstrong> – It is possible to change the mobile switching mode in case the site-owner needs to reset the configuration.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Settings\u003C\u002Fstrong> – This page lists all the settings for the site which are simple enough to edit with this mobile interface. Complex settings, such as which plugins are installed, are not available. However, text- and number-based settings can be easily edited. Note that no descriptions are available for each setting and the meanings of the values, so it is advisable to only edit them cautiously.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>It is also possible to log-out of the admin panel. Since the login is stored persistently on the mobile device, this is advisable if the site is sensitive and administrators want to protect against the impact of handset theft.\u003C\u002Fp>\n\u003Cp>The mobile administration panel uses the same URL structure as the desktop version, so in most cases, the administration links sent to administrators in emails (such as when a comment needs moderation) can be followed regardess of whether they are using a mobile device or a desktop.\u003C\u002Fp>\n\u003Ch4>Mobile ad widget\u003C\u002Fh4>\n\u003Cp>This provides the ability to place a new widget into the site containing either AdMob or Google mobile ads. Administrators will see the ‘Mobile Ads’ in the ‘Widget’ admin page, and it allows them to specify which provider to use, and the publisher ID.\u003C\u002Fp>\n\u003Cp>The widget can also be configured to attempt to disable itself when shown on a desktop theme. This is recommended, since the quality of mobile ads presented in response to a desktop user context is lower, and relevant conversion rates may be negatively affected.\u003C\u002Fp>\n\u003Cp>Google supports both single-ad and double-ad modes. Administrators can select which to use from the same publisher dropdown.\u003C\u002Fp>\n\u003Ch4>Barcode widget\u003C\u002Fh4>\n\u003Cp>Site owners can place a two-dimensional QR-code widget on the desktop site that users can use to quickly navigate to the mobile version of the site. If their phones have a camera and QR-code reader capabilities, they can simply snap the barcode off their desktop screen and navigate directly to the mobile equivalent.\u003C\u002Fp>\n\u003Cp>If a URL is specified, the QR-code is fixed to that address. If it is left blank, it will correspond to the page it is being displayed upon.\u003C\u002Fp>\n\u003Cp>Within the widget site owners can specify the link to provide, and the size of the square barcode to show. Site owners should ensure it fits well into the desktop theme.\u003C\u002Fp>\n\u003Cp>Site owners can also indicate whether they want the widget to show some instructions to the users about the purpose of the barcode, as well as a list of well-known readers they can download for their devices if they are not already installed.\u003C\u002Fp>\n","The BAAP Mobile Version is a complete toolkit to help mobilize your WordPress site. It has a mobile switcher, themes, widgets, and mobile admin panel.",40,34261,"2011-04-06T02:37:00.000Z","3.1.4","2.5",[20,21,22,89,90],"pda","wireless","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fbaap-mobile-version\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbaap-mobile-version.zip",{"slug":94,"name":95,"version":96,"author":97,"author_profile":98,"description":99,"short_description":100,"active_installs":101,"downloaded":102,"rating":103,"num_ratings":104,"last_updated":105,"tested_up_to":106,"requires_at_least":107,"requires_php":108,"tags":109,"homepage":113,"download_link":114,"security_score":115,"vuln_count":116,"unpatched_count":27,"last_vuln_date":117,"fetched_at":29},"super-progressive-web-apps","Super Progressive Web Apps","2.2.42","SuperPWA","https:\u002F\u002Fprofiles.wordpress.org\u002Fsuperpwa\u002F","\u003Cp>Progressive Web Apps (PWA) is a new 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.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002F\" rel=\"nofollow ugc\">Home\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Help\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002F#pro-doc\" rel=\"nofollow ugc\">Premium version Features\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>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!\u003C\u002Fp>\n\u003Cp>Super Progressive Web Apps makes it easy for you to convert your WordPress website into a Progressive Web App instantly!\u003C\u002Fp>\n\u003Cp>Once SuperPWA 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. Every page visited is stored locally on their device and will be available to read even when they are offline!\u003C\u002Fp>\n\u003Cp>SuperPWA is easy to configure, it takes less than a minute to set-up your Progressive Web App! SuperPWA does a clean uninstall, by removing every database entry and file that it creates. In fact, none of the default settings are saved to the database until you manually save it the first time. Go ahead and give it a try.\u003C\u002Fp>\n\u003Cp>And the best part? If you ever get stuck, we are here to watch your back! \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fsuper-progressive-web-apps\" rel=\"ugc\">Open a support\u003C\u002Fa> ticket if you have a question or need a feature. We are super excited to hear your feedback and we want to genuinely help you build the best Progressive Web App for your WordPress website!\u003C\u002Fp>\n\u003Ch4>Quick Demo?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Open up \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002F?utm_source=wordpress.org&utm_medium=description-demo\" rel=\"nofollow ugc\">SuperPWA.com\u003C\u002Fa> in a supported device. \u003C\u002Fli>\n\u003Cli>Add the website to your home screen either from the Add to Home Screen prompt (Chrome for Android) or from the browser menu. \u003C\u002Fli>\n\u003Cli>Open the app from your home screen and you will see the splash screen. \u003C\u002Fli>\n\u003Cli>Turn off your data and wifi to go offline and open up the app. You will still be able to see the app and browse the pages you have already visited. \u003C\u002Fli>\n\u003Cli>Browse to a page that you haven’t visited before. The offline page will be displayed. \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Thank You PWA Enthusiasts!\u003C\u002Fh4>\n\u003Cp>We are humbled by the feedback from the community. Thanks to everyone who believed in us and tried our plugin. Your feedback has been invaluable and we have learned a lot from your experience. Thank you for your love and support and we hope to return the love by striving to bring you the best ever Progressive Web Apps plugin for WordPress!\u003C\u002Fp>\n\u003Ch3>What’s in the box\u003C\u002Fh3>\n\u003Cp>Here are the current features of Super Progressive Web Apps:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Generate a manifest for your website and add it to the head of your website.\u003C\u002Fli>\n\u003Cli>Set the application icon for your Progressive Web App. \u003C\u002Fli>\n\u003Cli>Set the background color for the splash screen of your Progressive Web App. \u003C\u002Fli>\n\u003Cli>Your website will show the “Add to home screen” notice when accessed in a supported browser.\u003C\u002Fli>\n\u003Cli>Aggressive caching of pages using CacheStorage API.\u003C\u002Fli>\n\u003Cli>Pages once cached are served even if the user is offline. \u003C\u002Fli>\n\u003Cli>Set custom offline page: Select the page you want the user to see when a page that isn’t in the cache is accessed and the user is offline.\u003C\u002Fli>\n\u003Cli>New in version 1.2: Support for theme-color meta property. Change the color of browser address bar of Chrome, Firefox OS and Opera to match your website colors. \u003C\u002Fli>\n\u003Cli>New in version 1.2: Now you can edit the Application Name and Application Short name.\u003C\u002Fli>\n\u003Cli>New in version 1.2: Set the start page of your PWA.\u003C\u002Fli>\n\u003Cli>New in version 1.2: Set Accelerated Mobile Pages (AMP) version of the start page. Supported plugins: AMP for WordPress, AMP for WP, Better AMP, AMP Supremacy, WP AMP.\u003C\u002Fli>\n\u003Cli>New in version 1.3: Added support for high-quality splash screen. You can now set the 512×512 icon for the splash screen of your Progressive Web App.\u003C\u002Fli>\n\u003Cli>New in version 1.3: Super Progressive Web Apps now accounts for content updates and will update the cache as you update the website. \u003C\u002Fli>\n\u003Cli>New in version 1.3: Improved in-browser service worker update handling.\u003C\u002Fli>\n\u003Cli>New in version 1.4: You can now set the default orientation of your PWA. Choose from “any” (Follow Device Orientation), “Portrait” and “Landscape”.\u003C\u002Fli>\n\u003Cli>New in version 1.4: You can now set the theme_color property in the manifest.\u003C\u002Fli>\n\u003Cli>New in version 1.5: OneSignal integration for Push notifications.\u003C\u002Fli>\n\u003Cli>New in version 1.6: WordPress Multisite Network compatibility. \u003C\u002Fli>\n\u003Cli>New in version 1.7: Add-Ons for SuperPWA is here! Ships with \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Faddons\u002Futm-tracking\u002F?utm_source=wordpress.org&utm_medium=description\" rel=\"nofollow ugc\">UTM Tracking Add-On\u003C\u002Fa> to track visits coming from your PWA.\u003C\u002Fli>\n\u003Cli>New in version 1.8: Compatibility issues with OneSignal are now resolved! \u003C\u002Fli>\n\u003Cli>New in version 1.8: New Add-On: \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Faddons\u002Fapple-touch-icons\u002F?utm_source=wordpress.org&utm_medium=description\" rel=\"nofollow ugc\">Apple Touch Icons\u003C\u002Fa> that sets your app icons as Apple Touch Icons. \u003C\u002Fli>\n\u003Cli>New in version 2.0: SuperPWA is now compatible with WordPress installed in a sub-folder. \u003C\u002Fli>\n\u003Cli>New in version 2.0: You can now set \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdoc\u002Fweb-app-manifest-display-modes\u002F?utm_source=wordpress.org&utm_medium=description\" rel=\"nofollow ugc\">display property\u003C\u002Fa> from SuperPWA settings.\u003C\u002Fli>\n\u003Cli>New in version 2.1.1: SuperPWA now supports Maskable Icons.\u003C\u002Fli>\n\u003Cli>New in version 2.1.15: SuperPWA now supports Monochrome Icon.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fchangelog\u002F\" rel=\"nofollow ugc\">Full changelog\u003C\u002Fa> \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Upcoming features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Offline Indicator Notice.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>PRO Version\u003C\u002Fstrong> support additional \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">advance feature\u003C\u002Fa>\u003Cbr \u002F>\n* Call To Action (CTA) \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdoc\u002Fcall-to-action-cta-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003Cbr \u002F>\n* Android APK APP Generator \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdoc\u002Fandroid-apk-app-generator-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003Cbr \u002F>\n* Data Analytics \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdoc\u002Fdata-analytics-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003Cbr \u002F>\n* Pre-Loader \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002Farticle\u002Fpreloader-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003Cbr \u002F>\n* App Shortcuts \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002Farticle\u002Fapp-shortcuts-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003Cbr \u002F>\n* QR Code Generator \u003Ca href=\"https:\u002F\u002Fsuperpwa.com\u002Fdocs\u002Farticle\u002Fqr-code-generator-add-on-for-superpwa\u002F\" rel=\"nofollow ugc\">More Info\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Progressive Web App Minimum Requirements\u003C\u002Fh3>\n\u003Cp>Progressive Web Apps require that your WordPress website is served from a secure origin i.e. your website should be HTTPS and not HTTP. If your website isn’t HTTPS, please contact your host about it. You can also \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fsuper-progressive-web-apps\" rel=\"ugc\">ask us\u003C\u002Fa> if you need help.\u003C\u002Fp>\n\u003Ch3>Device and Browser Support For PWA\u003C\u002Fh3>\n\u003Cp>Progressive web apps need browsers that support manifests and service workers. Currently Google Chrome (version 57+), Chrome for Android (62), Mozilla Firefox (57), Firefox for Android (58) are the major browsers that support PWA.\u003C\u002Fp>\n\u003Cp>The list is fast growing and is likely to be supported in most major browsers by the end of this year.\u003C\u002Fp>\n\u003Ch3>How To Convert Your WordPress Website Into A Progressive Web App\u003C\u002Fh3>\n\u003Ch4>WordPress Installation\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Visit WordPress Admin > Plugins > Add New\u003C\u002Fli>\n\u003Cli>Search for ‘Super Progressive Web Apps’\u003C\u002Fli>\n\u003Cli>Click “Install Now” and then “Activate” Super Progressive Web Apps\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>To install manually:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Upload super-progressive-web-apps folder to the \u002Fwp-content\u002Fplugins\u002F directory on your server\u003C\u002Fli>\n\u003Cli>Go to WordPress Admin > Plugins\u003C\u002Fli>\n\u003Cli>Activate Super Progressive Web Apps plugin from the list.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Customizing Your Progressive Web App\u003C\u002Fh4>\n\u003Cp>Your Progressive Web App should be ready to test with the default settings on activation. You can customize it further and make it truly your own.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Go to WordPress Admin > SuperPWA\u003C\u002Fli>\n\u003Cli>Set a Background Color for the splash screen to be shown when your PWA is opened on a mobile device.\u003C\u002Fli>\n\u003Cli>Set the Application Icon. This will be the icon of your PWA when it is added to the homescreen in a mobile device. The icon must be a PNG image and exactly 192 x 192 pixels in size.\u003C\u002Fli>\n\u003Cli>Set the Offline Page. This page will be displayed if the user is offline and the page he requested is not cached already. Ideally you should create a dedicated WordPress page and set it here. Within the page you create, you could add a note that reads, “It looks like you are offline and the page you requested is not available right now. Please check back again once you are online.”. \u003C\u002Fli>\n\u003Cli>Click “Save Settings”.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Testing Your Progressive Web App\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Open a supported browser in a supported device (for eg: Chrome for Android (62 or higher) in an Android Phone)\u003C\u002Fli>\n\u003Cli>Enter your website and wait till it fully loads\u003C\u002Fli>\n\u003Cli>You should see a pop-up that has your Application Icon and a button that reads “ADD TO HOME SCREEN”.\u003C\u002Fli>\n\u003Cli>Click on it and your PWA will be added to your home screen. Wait for the install to complete. \u003C\u002Fli>\n\u003Cli>Go to your home screen and open your PWA. Browse into a few pages if you like. Close the App.\u003C\u002Fli>\n\u003Cli>Disconnect from the internet and now open your PWA again. You should be able to see all the pages that you previously browsed. \u003C\u002Fli>\n\u003Cli>Try visiting a page that you did not visit before. You should see the page you set as your “Offline Page” in the settings of SuperPWA. \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Troubleshooting Your Progressive Web App\u003C\u002Fh4>\n\u003Cp>Uh, oh. Your PWA did not work as expected? You do not see the “Add to Home Screen” notice?\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Make sure your website has a SSL certificate installed. i.e. your website should be https instead of http (as in https:\u002F\u002Fyour-domain.com).\u003C\u002Fli>\n\u003Cli>Make sure you are using a supported device and a supported browser. Refer to the “Device and Browser Support For PWA” list above.\u003C\u002Fli>\n\u003Cli>Make sure your Application Icon and Splash Screen Icon’s are of PNG format and 192px X 192px and 512px X 512px in size respectively. \u003C\u002Fli>\n\u003Cli>Clear the browser cache and try again. In Chrome for Android, go to Settings > Privacy > “Clear browsing data”.\u003C\u002Fli>\n\u003Cli>If the application icon does not update after first install, delete the PWA from your phone, clear browser cache and install again. (We are working on making it better.) \u003C\u002Fli>\n\u003Cli>Create a \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fsuper-progressive-web-apps\" rel=\"ugc\">new support ticket\u003C\u002Fa> and share a link to your website. We will take a look and figure it out for you.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Feature Requests, Issues, Pull Requests\u003C\u002Fh3>\n\u003Cp>Here is our repository on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FSuperPWA\u002FSuper-Progressive-Web-Apps\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>. Send us your pull requests, feature requests or issues, if any.\u003C\u002Fp>\n\u003Ch3>About us\u003C\u002Fh3>\n\u003Cp>We are a duo who got excited about the idea. Our mission is simple: Help you build an awesome PWA that your users would want to have on their home screen.\u003C\u002Fp>\n\u003Cp>When we first heard about PWA we wanted to learn everything about it. We have spent countless hours learning and wants to share it with the world.\u003C\u002Fp>\n\u003Cp>Please give us your constructive feedback and support.\u003C\u002Fp>\n","SuperPWA helps you convert your WordPress website into a Progressive Web App instantly.",50000,2278059,92,224,"2026-02-09T14:37:00.000Z","6.9.4","3.6.0","5.3",[110,111,112,4,23],"add-to-homescreen","android-app","chrome-app","https:\u002F\u002Fsuperpwa.com\u002F?utm_source=superpwa-plugin&utm_medium=plugin-uri","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsuper-progressive-web-apps.2.2.42.zip",99,2,"2023-11-22 00:00:00",{"slug":23,"name":119,"version":120,"author":121,"author_profile":122,"description":123,"short_description":124,"active_installs":125,"downloaded":126,"rating":127,"num_ratings":128,"last_updated":129,"tested_up_to":130,"requires_at_least":131,"requires_php":132,"tags":133,"homepage":136,"download_link":137,"security_score":50,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"PWA","0.8.2","Weston Ruter","https:\u002F\u002Fprofiles.wordpress.org\u002Fwestonruter\u002F","\u003Cblockquote cite=\"https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F\">\u003Cp>\nProgressive Web Apps are user experiences that have the reach of the web, and are:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F#reliable\" rel=\"nofollow ugc\">Reliable\u003C\u002Fa> – Load instantly and never show the downasaur, even in uncertain network conditions.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F#fast\" rel=\"nofollow ugc\">Fast\u003C\u002Fa> – Respond quickly to user interactions with silky smooth animations and no janky scrolling.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fprogressive-web-apps\u002F#engaging\" rel=\"nofollow ugc\">Engaging\u003C\u002Fa> – Feel like a natural app on the device, with an immersive user experience.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This new level of quality allows Progressive Web Apps to earn a place on the user’s home screen.\n\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>Continue reading more about \u003Ca href=\"https:\u002F\u002Fweb.dev\u002Fprogressive-web-apps\u002F\" rel=\"nofollow ugc\">Progressive Web Apps\u003C\u002Fa> (PWA) from Google.\u003C\u002Fp>\n\u003Cp>In general a PWA depends on the following technologies to be available:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FAPI\u002FService_Worker_API\" rel=\"nofollow ugc\">Service Workers\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FManifest\" rel=\"nofollow ugc\">Web App Manifest\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHTTPS\" rel=\"nofollow ugc\">HTTPS\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This plugin serves as a place to implement support for these in WordPress with the intention of being proposed for core merge, piece by piece. Case in point, the HTTPS functionality from this plugin has largely been made part of Core: \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002F2021\u002F02\u002F22\u002Fimproved-https-detection-and-migration-in-wordpress-5-7\u002F\" rel=\"nofollow ugc\">Improved HTTPS detection and migration in WordPress 5.7\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>This feature plugin is \u003Cem>not\u003C\u002Fem> intended to obsolete the other plugins and themes which turn WordPress sites into PWAs. Rather, this plugin is intended to provide the PWA building blocks and coordination mechanism for these themes and plugins to not reinvent the wheel and also to not conflict with each other. For example, a theme that implements the app shell model should be able to extend the core service worker while a plugin that provides push notifications should be able to do the same. Themes and plugins no longer should have to each create a service worker on their own, something which is inherently problematic because only one service worker can be active at a time: only one service worker can win. If you are developing a plugin or theme that includes a service worker, consider relying on this PWA plugin, or at least only use the built-in implementation as a fallback for when the PWA plugin is not available.\u003C\u002Fp>\n\u003Cp>In versions prior to 0.6, no caching strategies were added by default. The only service worker behavior was to serve an offline template when the client’s connection is down or the site is down, and also to serve an error page when the server returns with 500 Internal Server Error. As of 0.6, there is a new “Offline browsing” toggle on the Reading Settings screen in the admin. It is disabled by default, but when enabled a \u003Ca href=\"https:\u002F\u002Fweb.dev\u002Foffline-cookbook\u002F#network-falling-back-to-cache\" rel=\"nofollow ugc\">network-first\u003C\u002Fa> caching strategy is registered for navigations so that the offline page won’t be shown when accessing previously-accessed pages. The network-first strategy is also used for assets from themes, plugins, and WordPress core. In addition, uploaded images get served with a \u003Ca href=\"https:\u002F\u002Fweb.dev\u002Foffline-cookbook\u002F#stale-while-revalidate\" rel=\"nofollow ugc\">stale-while-revalidate\u003C\u002Fa> strategy. For all the details on these changes, see the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fpwa-wp\u002Fpull\u002F338\" rel=\"nofollow ugc\">pull request\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Documentation for the plugin can be found on the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fpwa-wp\u002Fwiki\" rel=\"nofollow ugc\">GitHub project Wiki\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Development of this plugin is done \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fpwa-wp\" rel=\"nofollow ugc\">on GitHub\u003C\u002Fa>. Pull requests welcome. Please see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fpwa-wp\u002Fissues\" rel=\"nofollow ugc\">issues\u003C\u002Fa> reported there before going to the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fpwa\" rel=\"ugc\">plugin forum\u003C\u002Fa>.\u003C\u002Fstrong>\u003C\u002Fp>\n","WordPress feature plugin to bring Progressive Web App (PWA) capabilities to Core",20000,594997,86,27,"2025-04-10T16:55:00.000Z","6.8.5","6.6","7.2",[4,23,134,135],"service-workers","web-app-manifest","https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fpwa-wp","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpwa.0.8.2.zip",{"attackSurface":139,"codeSignals":236,"taintFlows":353,"riskAssessment":354,"analyzedAt":366},{"hooks":140,"ajaxHandlers":197,"restRoutes":215,"shortcodes":234,"cronEvents":235,"entryPointCount":33,"unprotectedCount":33},[141,147,151,156,161,164,167,173,176,180,183,185,190,194],{"type":142,"name":143,"callback":144,"file":145,"line":146},"action","admin_enqueue_scripts","pwapp_admin_enqueue_scripts","admin\\class-admin-init.php",54,{"type":142,"name":148,"callback":149,"file":145,"line":150},"admin_menu","pwapp_admin_menu",57,{"type":142,"name":152,"callback":153,"file":154,"line":155},"admin_notices","display_admin_notices","core\\class-pwapp.php",84,{"type":142,"name":157,"callback":158,"file":159,"line":160},"wp_head","show_smart_app_banner","frontend\\class-application.php",87,{"type":142,"name":162,"callback":163,"file":159,"line":13},"wp_footer","show_mobile_link",{"type":142,"name":157,"callback":165,"file":159,"line":166},"show_rel",96,{"type":168,"name":169,"callback":170,"priority":171,"file":159,"line":172},"filter","stylesheet","app_theme",11,164,{"type":168,"name":174,"callback":170,"priority":171,"file":159,"line":175},"template",165,{"type":168,"name":177,"callback":178,"priority":171,"file":159,"line":179},"theme_root","app_theme_root",167,{"type":168,"name":181,"callback":178,"priority":171,"file":159,"line":182},"theme_root_uri",168,{"type":142,"name":152,"callback":153,"file":184,"line":146},"inc\\class-uploads.php",{"type":142,"name":186,"callback":187,"file":188,"line":189},"rest_api_init","register_pwapp_routes","progressive-web-apps.php",43,{"type":142,"name":191,"callback":192,"file":188,"line":193},"plugins_loaded","PWAPP\\pwapp_admin_init",65,{"type":142,"name":191,"callback":195,"file":188,"line":196},"PWAPP\\pwapp_frontend_init",68,[198,203,207,211],{"action":199,"nopriv":200,"callback":201,"hasNonce":200,"hasCapCheck":200,"file":188,"line":202},"pwapp_editimages",false,"theme_editimages",59,{"action":204,"nopriv":200,"callback":205,"hasNonce":200,"hasCapCheck":200,"file":188,"line":206},"pwapp_theme_settings","theme_settings",60,{"action":208,"nopriv":200,"callback":209,"hasNonce":200,"hasCapCheck":200,"file":188,"line":210},"pwapp_send_feedback","send_feedback",61,{"action":212,"nopriv":200,"callback":213,"hasNonce":200,"hasCapCheck":200,"file":188,"line":214},"pwapp_settings_save","settings_save",62,[216,224,229],{"namespace":217,"route":218,"methods":219,"callback":221,"permissionCallback":28,"file":222,"line":223},"pwapp","\u002Fmanifest",[220],"GET","export_manifest","inc\\class-api.php",21,{"namespace":217,"route":225,"methods":226,"callback":227,"permissionCallback":28,"file":222,"line":228},"\u002Fcategories",[220],"export_categories",28,{"namespace":217,"route":230,"methods":231,"callback":232,"permissionCallback":28,"file":222,"line":233},"\u002Flanguage",[220],"export_language",49,[],[],{"dangerousFunctions":237,"sqlUsage":238,"outputEscaping":240,"fileOperations":223,"externalRequests":350,"nonceChecks":27,"capabilityChecks":351,"bundledLibraries":352},[],{"prepared":27,"raw":27,"locations":239},[],{"escaped":241,"rawEcho":206,"locations":242},18,[243,247,249,251,253,255,258,260,262,263,265,267,268,269,271,273,274,276,277,278,280,281,282,284,285,287,288,290,291,292,294,296,298,300,302,304,306,308,311,313,316,318,320,323,324,325,328,331,333,335,336,338,339,340,343,344,345,346,348,349],{"file":244,"line":245,"context":246},"admin\\class-admin-ajax.php",253,"raw output",{"file":244,"line":248,"context":246},307,{"file":244,"line":250,"context":246},339,{"file":244,"line":252,"context":246},594,{"file":244,"line":254,"context":246},664,{"file":256,"line":257,"context":246},"admin\\pages\\theme-settings.php",13,{"file":256,"line":259,"context":246},66,{"file":256,"line":261,"context":246},75,{"file":256,"line":261,"context":246},{"file":256,"line":264,"context":246},89,{"file":256,"line":266,"context":246},98,{"file":256,"line":266,"context":246},{"file":256,"line":266,"context":246},{"file":256,"line":270,"context":246},115,{"file":256,"line":272,"context":246},144,{"file":256,"line":272,"context":246},{"file":256,"line":275,"context":246},145,{"file":256,"line":275,"context":246},{"file":256,"line":275,"context":246},{"file":256,"line":279,"context":246},175,{"file":256,"line":279,"context":246},{"file":256,"line":279,"context":246},{"file":256,"line":283,"context":246},201,{"file":256,"line":283,"context":246},{"file":256,"line":286,"context":246},207,{"file":256,"line":286,"context":246},{"file":256,"line":289,"context":246},208,{"file":256,"line":289,"context":246},{"file":256,"line":245,"context":246},{"file":256,"line":293,"context":246},258,{"file":256,"line":295,"context":246},303,{"file":256,"line":297,"context":246},353,{"file":256,"line":299,"context":246},389,{"file":256,"line":301,"context":246},392,{"file":303,"line":171,"context":246},"admin\\pages\\themes.php",{"file":303,"line":305,"context":246},45,{"file":303,"line":307,"context":246},67,{"file":309,"line":310,"context":246},"admin\\sections\\admin-menu.php",22,{"file":309,"line":312,"context":246},25,{"file":314,"line":315,"context":246},"admin\\sections\\feedback.php",6,{"file":154,"line":317,"context":246},119,{"file":154,"line":319,"context":246},133,{"file":321,"line":322,"context":246},"frontend\\sections\\show-mobile-link.php",17,{"file":321,"line":223,"context":246},{"file":321,"line":223,"context":246},{"file":326,"line":327,"context":246},"frontend\\sections\\show-rel.php",37,{"file":329,"line":330,"context":246},"frontend\\sections\\smart-app-banner.php",76,{"file":329,"line":332,"context":246},77,{"file":329,"line":334,"context":246},78,{"file":329,"line":160,"context":246},{"file":329,"line":337,"context":246},88,{"file":329,"line":264,"context":246},{"file":329,"line":264,"context":246},{"file":341,"line":342,"context":246},"frontend\\sections\\template.php",63,{"file":341,"line":193,"context":246},{"file":341,"line":261,"context":246},{"file":341,"line":334,"context":246},{"file":341,"line":347,"context":246},80,{"file":341,"line":155,"context":246},{"file":341,"line":115,"context":246},1,9,[],[],{"summary":355,"deductions":356},"The \"progressive-web-apps\" v1.0.1 plugin exhibits significant security concerns primarily due to its exposed attack surface. A large proportion of its entry points, specifically all AJAX handlers and REST API routes, lack proper authentication and authorization checks. This means that any unauthenticated user could potentially interact with these endpoints, leading to unintended actions or information disclosure.\n\nWhile the plugin demonstrates good practices in handling SQL queries with prepared statements and does not appear to have any recorded vulnerabilities or critical taint flows, the lack of security checks on its AJAX and REST API routes is a major weakness. The significant percentage of improperly escaped output also presents a risk of Cross-Site Scripting (XSS) vulnerabilities if user-supplied data is not handled carefully within these exposed endpoints.\n\nOverall, the plugin's security posture is weak due to the unauthenticated entry points, despite the absence of known historical vulnerabilities. The code signals suggest potential for XSS due to poor output escaping. The lack of any recorded vulnerabilities might indicate a small user base or limited security scrutiny thus far. The plugin's strengths lie in its SQL handling, but these are overshadowed by the critical concerns regarding its exposed and unprotected endpoints.",[357,359,361,363],{"reason":358,"points":11},"Unprotected AJAX handlers",{"reason":360,"points":11},"Unprotected REST API routes",{"reason":362,"points":315},"Significant percentage of unescaped output",{"reason":364,"points":365},"No nonce checks on AJAX handlers",5,"2026-03-17T00:10:53.509Z",{"wat":368,"direct":409},{"assetPaths":369,"generatorPatterns":388,"scriptPaths":389,"versionParams":390},[370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387],"\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fcss\u002Ffonts.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fcss\u002Fgeneral.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fjquery.validate.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fvalidate-additional-methods.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLoader.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FAjaxUpload.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FJSInterface.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FFeedback\u002FPWAPP_SEND_FEEDBACK.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fcss\u002Fjquery.selectBoxIt.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fjquery.selectBoxIt.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-1.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-2.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-3.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-4.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-5.css","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_EDIT_THEME.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_EDIT_IMAGES.min.js","\u002Fwp-content\u002Fplugins\u002Fprogressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_SERVICE_WORKER.min.js",[],[372,373,374,375,376,377,379,385,386,387],[391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408],"progressive-web-apps\u002Fadmin\u002Fcss\u002Ffonts.css?ver=","progressive-web-apps\u002Fadmin\u002Fcss\u002Fgeneral.css?ver=","progressive-web-apps\u002Fadmin\u002Fcss\u002Fjquery.selectBoxIt.css?ver=","progressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-1.css?ver=","progressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-2.css?ver=","progressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-3.css?ver=","progressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-4.css?ver=","progressive-web-apps\u002Ffrontend\u002Ffonts\u002Ffont-5.css?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fjquery.validate.min.js?ver=1.11.1","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fvalidate-additional-methods.min.js?ver=1.11.1","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLoader.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FAjaxUpload.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FJSInterface.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FFeedback\u002FPWAPP_SEND_FEEDBACK.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Interface\u002FLib\u002Fjquery.selectBoxIt.min.js?ver=3.8.1","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_EDIT_THEME.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_EDIT_IMAGES.min.js?ver=","progressive-web-apps\u002Fadmin\u002Fjs\u002FUI.Modules\u002FTheming\u002FPWAPP_SERVICE_WORKER.min.js?ver=",{"cssClasses":410,"htmlComments":411,"htmlAttributes":413,"restEndpoints":414,"jsGlobals":416,"shortcodeOutput":420},[],[412],"\u003C!-- Uncomment the line below to enable comments -->",[],[415],"\u002Fwp-json\u002Fpwapp",[417,418,419],"PWAPP_PLUGIN_NAME","PWAPP_DOMAIN","PWAPP_VERSION",[]]