JSFoo 2016

Tackling speed and performance for JavaScript

Shidhin C R


AMP ( Accelerated Mobile Pages ) + PWA ( Progressive Web Apps ) Combo for Fun and Profit

Submitted Aug 11, 2016

Progressive Web Apps (PWA) are the future of mobile web applications/websites. It enables a number of native apps like experiences to the mobile web platform. PWA using service workers gives the power of push notifications, offline support and background sync ..etc
Accelerated Mobile Pages is another initiative from Google for loading mobile webpages in high-speed. It uses amp-html ( a subset containing high performing custom components ) to build the page, hence providing the best rendering and loading performance.

While PWA solves the distribution problem and offline support, AMP offers wide support for the discoverability of the websites. Together these duo makes high performance mobile web.
AMP can be used for better SEO and customer acquisitions and from that point onwards PWAs can kick in for customer engagements ( using push notifications, offline, add to home screen ).

This talk is all about creating AMP pages for better SEO and high speed rendering and transitioning the user to PWA for more engagement.


The presentation will consists of:

  • The basics of Accelerated Mobile Pages and Propgressive Web Apps
  • How they differ and how they can be combined
  • Building a high performing AMP version of your website.
  • Installing service worker from an AMP page
  • Seamlessly transitioning from AMP page to Progressive Web App
  • Future of the combo

Speaker bio

Shidhin is a seasoned Front-end developer, A Google Developer Expert in web technologies. He works in Namshi.com as a senior front end engineer. He is passionate about the latest front-end stuff, actively contributes to open source.
When he is not working, you can find him writing thoughts and ideas on his blog www.undefinednull.com



{{ gettext('Login to leave a comment') }}

{{ gettext('Post a comment…') }}
{{ gettext('New comment') }}
{{ formTitle }}

{{ errorMsg }}

{{ gettext('No comments posted yet') }}