[38;5;12m                           [39m[38;2;255;187;0m[1m[4mAwesome Progressive Web Apps [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://github.com/sindresorhus/awesome)[0m

[38;5;12mA curated collection of Progressive Web Apps resources.[39m


[38;5;11m[1m▐[0m[38;5;12m [39m[38;5;12mProgressive[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapps[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mbreed[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapps.[39m[38;5;12m [39m[38;5;12mThey[39m[38;5;12m [39m[38;5;12mcombine[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mbenefits[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mnative[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mlow[39m[38;5;12m [39m[38;5;12mfriction[39m[38;5;12m [39m[38;5;12mnature[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mweb.[39m[38;5;12m [39m[38;5;12mProgressive[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapps[39m[38;5;12m [39m[38;5;12mstart[39m[38;5;12m [39m[38;5;12moff[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mwebsites,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12muser[39m[38;5;12m [39m[38;5;12minteracts[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthem,[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m
[38;5;11m[1m▐[0m[38;5;12m [39m[38;5;12mprogressively[39m[38;5;12m [39m[38;5;12mgain[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mpowers.[39m[38;5;12m [39m[38;5;12mThey[39m[38;5;12m [39m[38;5;12mtransform[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mwebsite[39m[38;5;12m [39m[38;5;12minto[39m[38;5;12m [39m[38;5;12msomething[39m[38;5;12m [39m[38;5;12mmuch[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mtraditional[39m[38;5;12m [39m[38;5;12mnative[39m[38;5;12m [39m[38;5;12mapp.[39m
[38;5;11m[1m▐[0m[38;5;12m [39m
[38;5;11m[1m▐[0m[38;5;12m [39m[38;5;12m-- [39m

[38;5;12mIf you want to contribute, please read the [39m[38;5;14m[1mcontribution guidelines[0m[38;5;12m (contributing.md).[39m

[38;2;255;187;0m[4mContents[0m

[38;5;12m- [39m[38;5;14m[1mMust Reads[0m[38;5;12m (#must-reads)[39m
[38;5;12m- [39m[38;5;14m[1mLearning Resources[0m[38;5;12m (#learning-resources)[39m
[38;5;12m- [39m[38;5;14m[1mBrowser Support[0m[38;5;12m (#browser-support)[39m
[38;5;12m- [39m[38;5;14m[1mVideos[0m[38;5;12m (#videos)[39m
[38;5;12m- [39m[38;5;14m[1mCase Studies[0m[38;5;12m (#case-studies)[39m
[38;5;12m- [39m[38;5;14m[1mSample Progressive Web Apps[0m[38;5;12m (#sample-progressive-web-apps)[39m
[38;5;12m- [39m[38;5;14m[1mSpecific Technologies[0m[38;5;12m (#specific-technologies)[39m
[38;5;12m  - [39m[38;5;14m[1mService Workers[0m[38;5;12m (#service-workers)[39m
[38;5;12m  - [39m[38;5;14m[1mCacheStorage API[0m[38;5;12m (#cachestorage-api)[39m
[38;5;12m  - [39m[38;5;14m[1mBackground Sync[0m[38;5;12m (#background-sync)[39m
[38;5;12m  - [39m[38;5;14m[1mPush Notifications[0m[38;5;12m (#push-notifications)[39m
[38;5;12m  - [39m[38;5;14m[1mIndexedDB[0m[38;5;12m (#indexeddb)[39m
[38;5;12m  - [39m[38;5;14m[1mInstallable Web Apps[0m[38;5;12m (#installable-web-apps)[39m
[48;5;235m[38;5;249m- **App Icons** (#app-icons)[49m[39m
[38;5;12m  - [39m[38;5;14m[1mWeb Share APIs[0m[38;5;12m (#web-share-apis)[39m
[38;5;12m- [39m[38;5;14m[1mAwesome Performance[0m[38;5;12m (#awesome-performance)[39m

[38;2;255;187;0m[4mMust Reads[0m

[38;5;12m- [39m[38;5;14m[1mBuilding Progressive Web Apps - O'Reilly Media[0m[38;5;12m (https://pwabook.com/oreillyapwa) - A deep dive into progressive web apps, service workers, push notifications, background sync, IndexedDB, offline first and much more.[39m
[38;5;12m- [39m[38;5;14m[1mOffline Web Applications Using IndexedDB & Service Worker[0m[38;5;12m (https://www.udacity.com/course/offline-web-applications--ud899) - A free Udacity course introducing the basic concepts of building a progressive web app.[39m

[38;2;255;187;0m[4mLearning Resources[0m

[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mGoogle[0m[38;5;14m[1m [0m[38;5;14m[1mDevelopers[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mYour[0m[38;5;14m[1m [0m[38;5;14m[1mFirst[0m[38;5;14m[1m [0m[38;5;14m[1mProgressive[0m[38;5;14m[1m [0m[38;5;14m[1mWeb[0m[38;5;14m[1m [0m[38;5;14m[1mApp[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/fundamentals/getting-started/your-first-progressive-web-app/?hl=en)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mstep-by-step[39m[38;5;12m [39m[38;5;12mguide[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuilding[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mprogressive[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapps[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12mshell[39m[38;5;12m [39m
[38;5;12mpattern.[39m
[38;5;12m- [39m[38;5;14m[1mAwesome Service Workers[0m[38;5;12m (https://github.com/TalAter/awesome-service-workers) - A collection of awesome resources for learning service workers.[39m
[38;5;12m- [39m[38;5;14m[1mService Workers W3C Specification[0m[38;5;12m (https://www.w3.org/TR/service-workers/) - The official service workers spec.[39m

[38;2;255;187;0m[4mBrowser Support[0m

[38;5;12m- [39m[38;5;14m[1mCan I Use - Service Workers[0m[38;5;12m (http://caniuse.com/#feat=serviceworkers) - Up-to-date browser support table of ServiceWorker API.[39m
[38;5;12m- [39m[38;5;14m[1mIs Service Worker ready?[0m[38;5;12m (https://jakearchibald.github.io/isserviceworkerready/) - Current status of ServiceWorker support in different browsers.[39m

[38;2;255;187;0m[4mVideos[0m

[38;5;12m- [39m[38;5;14m[1mInstant Loading: Building offline-first Progressive Web Apps - Google I/O 2016[0m[38;5;12m (https://youtu.be/cmGr0RszHc8) - A quick dive into the most common technologies and techniques for building progressive web apps.[39m
[38;5;12m- [39m[38;5;14m[1mIntro To Progressive Web Apps[0m[38;5;12m (https://www.udacity.com/course/intro-to-progressive-web-apps--ud811) - This free Udacity course by Google covers intro to PWAs, service workers and web app manifests.[39m
[38;5;12m- [39m[38;5;14m[1mOffline Web Applications Using IndexedDB & Service Worker[0m[38;5;12m (https://www.udacity.com/course/offline-web-applications--ud899) - This free Udacity course is a must if you're planning to dive deep into service workers.[39m
[38;5;12m- [39m[38;5;14m[1mProgressive Web Apps (Chrome Dev Summit 2015)[0m[38;5;12m (https://www.youtube.com/watch?v=MyQ8mtR9WxI) - An introduction to progressive web apps by Alex Russell and Andreas Bovens.[39m
[38;5;12m- [39m[38;5;14m[1mPolymer and Progressive Web Apps: Building on the modern web - Google I/O 2016[0m[38;5;12m (https://www.youtube.com/watch?v=fFF2Yup2dMM) - Using Polymer to build progressive web apps.[39m

[38;2;255;187;0m[4mCase Studies[0m

[38;5;12m- [39m[38;5;14m[1mBuilding the Google I/O 2016 Progressive Web App[0m[38;5;12m (https://developers.google.com/web/showcase/2016/iowa2016) - Building and launching a progressive web app using web components, Polymer, and material design.[39m
[38;5;12m- [39m[38;5;14m[1mAliExpress Case Study[0m[38;5;12m (https://developers.google.com/web/showcase/2016/aliexpress) - AliExpress increases conversion rate for new users by 104% with new progressive web apps.[39m
[38;5;12m- [39m[38;5;14m[1meXtra Electronics Case Study[0m[38;5;12m (https://developers.google.com/web/showcase/2016/extra) - United eXtra Electronics grows eCommerce sales by 100% with Web Push Notifications.[39m
[38;5;12m- [39m[38;5;14m[1mJumia Case Study[0m[38;5;12m (https://developers.google.com/web/showcase/2016/jumia) - Push Notifications help Jumia reverse cart abandonment and increase conversions by 9X.[39m
[38;5;12m- [39m[38;5;14m[1mKonga Case Study[0m[38;5;12m (https://developers.google.com/web/showcase/2016/konga) - Konga cuts data usage 92% with new Progressive Web App.[39m
[38;5;12m- [39m[38;5;14m[1mSuumo Case Study[0m[38;5;12m (https://developers.google.com/web/showcase/2016/suumo) - Japan's top real estate site supercharges new listings with web Push Notifications and sees a 31% open rate for notifications.[39m

[38;2;255;187;0m[4mSample Progressive Web Apps[0m

[38;5;12m- [39m[38;5;14m[1mPWA.rocks[0m[38;5;12m (https://pwa.rocks/) - A showcase of several progressive web apps, collected by the [39m[38;5;14m[1mOpera Dev Relations team[0m[38;5;12m (https://twitter.com/ODevRel).[39m
[38;5;12m- [39m[38;5;14m[1mSVGOMG[0m[38;5;12m (https://jakearchibald.github.io/svgomg/)[39m
[38;5;12m- [39m[38;5;14m[1mGuitar Tuner[0m[38;5;12m (https://aerotwist.com/blog/guitar-tuner/)[39m
[38;5;12m- [39m[38;5;14m[1mVoice Memos[0m[38;5;12m (https://voice-memos.appspot.com/)[39m
[38;5;12m- [39m[38;5;14m[1mHacker News[0m[38;5;12m (https://react-hn.appspot.com/)[39m

[38;2;255;187;0m[4mSpecific Technologies[0m

[38;2;255;187;0m[4mService Workers[0m

[38;5;12m- [39m[38;5;14m[1mAwesome Service Workers[0m[38;5;12m (https://github.com/TalAter/awesome-service-workers/) - A curated collection of the finest service worker resources.[39m

[38;2;255;187;0m[4mCacheStorage API[0m

[38;5;12m- [39m[38;5;14m[1mOffline Storage for Progressive Web Apps[0m[38;5;12m (https://medium.com/@addyosmani/offline-storage-for-progressive-web-apps-70d52695513c) - The current state of offline storage in the browser[39m
[38;5;12m- [39m[38;5;14m[1mCacheStorage API[0m[38;5;12m (https://developer.mozilla.org/en-US/docs/Web/API/Cache) - API docs, and sample code from Mozilla.[39m

[38;2;255;187;0m[4mBackground Sync[0m

[38;5;12m- [39m[38;5;14m[1mIntroducing Background Sync[0m[38;5;12m (https://developers.google.com/web/updates/2015/12/background-sync) - A gentle introduction to background sync, along with some great videos and code samples.[39m
[38;5;12m- [39m[38;5;14m[1mBackground Sync Explained[0m[38;5;12m (https://github.com/WICG/BackgroundSync/blob/master/explainer.md) - The official "explainer" document for background sync, including one-off synchronization and periodic synchronization.[39m
[38;5;12m- [39m[38;5;14m[1mBackground Sync Spec[0m[38;5;12m (https://wicg.github.io/BackgroundSync/spec/) - The WIP spec for Background Sync.[39m

[38;2;255;187;0m[4mPush Notifications[0m

[38;5;12m- [39m[38;5;14m[1mCan I Use - Push API[0m[38;5;12m (http://caniuse.com/#feat=push-api) - Up-to-date browser support table of Push API.[39m
[38;5;12m- [39m[38;5;14m[1mChrome Platform Status - Web Notifications[0m[38;5;12m (https://www.chromestatus.com/feature/5480344312610816) - Implementation status for Chrome and other browsers.[39m
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mPWA[0m[38;5;14m[1m [0m[38;5;14m[1mDev[0m[38;5;14m[1m [0m[38;5;14m[1mSummit[0m[38;5;14m[1m [0m[38;5;14m[1m2016[0m[38;5;14m[1m [0m[38;5;14m[1mcodelab[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mPush[0m[38;5;14m[1m [0m[38;5;14m[1mNotifications[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/fundamentals/getting-started/push-notifications/?hl=en)[39m[38;5;12m [39m[38;5;12mUp-to-date[39m[38;5;12m [39m[38;5;12mgetting[39m[38;5;12m [39m[38;5;12mstarted[39m[38;5;12m [39m[38;5;12mtutorial[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mProgressive[39m[38;5;12m [39m[38;5;12mWeb[39m[38;5;12m [39m[38;5;12mApp,[39m[38;5;12m [39m[38;5;12mPush[39m[38;5;12m [39m[38;5;12mNotifications[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m
[38;5;12mworker[39m[38;5;12m [39m[38;5;12mbasics.[39m
[38;5;12m- [39m[38;5;14m[1mUsing the Push API[0m[38;5;12m (https://developer.mozilla.org/en-US/docs/Web/API/Push_API/Using_the_Push_API) - An article introducing Push API.[39m
[38;5;12m- [39m[38;5;14m[1mweb-push-libs[0m[38;5;12m (https://github.com/web-push-libs) - A collection of useful libraries for web push in different technologies (Node.js, PHP, Python, etc.)[39m

[38;2;255;187;0m[4mIndexedDB[0m

[38;5;12m- [39m[38;5;14m[1mIndexedDB API[0m[38;5;12m (https://developer.mozilla.org/en/docs/Web/API/IndexedDB_API) - API docs, key concepts, and sample code from Mozilla.[39m

[38;2;255;187;0m[4mInstallable Web Apps[0m

[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mIncreasing[0m[38;5;14m[1m [0m[38;5;14m[1mEngagement[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mWeb[0m[38;5;14m[1m [0m[38;5;14m[1mApp[0m[38;5;14m[1m [0m[38;5;14m[1mInstall[0m[38;5;14m[1m [0m[38;5;14m[1mBanners[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android?hl=en)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mintro[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mApp[39m[38;5;12m [39m[38;5;12mInstall[39m[38;5;12m [39m[38;5;12mBanners[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmaking[39m[38;5;12m [39m[38;5;12msure[39m[38;5;12m [39m[38;5;12mChrome[39m
[38;5;12moffers[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12musers.[39m
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mInstallable[0m[38;5;14m[1m [0m[38;5;14m[1mWeb[0m[38;5;14m[1m [0m[38;5;14m[1mApps[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mWeb[0m[38;5;14m[1m [0m[38;5;14m[1mApp[0m[38;5;14m[1m [0m[38;5;14m[1mManifest[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mChrome[0m[38;5;14m[1m [0m[38;5;14m[1mfor[0m[38;5;14m[1m [0m[38;5;14m[1mAndroid[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/updates/2014/11/Support-for-installable-web-apps-with-webapp-manifest-in-chrome-38-for-Android)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12minstallable[39m[38;5;12m [39m
[38;5;12mWeb[39m[38;5;12m [39m[38;5;12mApps[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mChrome[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mAndroid.[39m

[38;2;255;187;0m[4mApp Icons[0m

[38;5;12m- [39m[38;5;14m[1mRealFaviconGenerator[0m[38;5;12m (http://realfavicongenerator.net/) - A great way to generate all the images, favicons, and associated files needed to display your app icon across different browsers.[39m
[38;5;12m- [39m[38;5;14m[1mAndroid Asset Studio - Launcher Icon Generator[0m[38;5;12m (https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html) - Generate Android style icons.[39m

[38;2;255;187;0m[4mWeb Share APIs[0m

[38;5;12m- [39m[38;5;14m[1mIntroducing the Web Share API[0m[38;5;12m (https://developers.google.com/web/updates/2016/10/navigator-share) - High level introduction to the Web Share API.[39m
[38;5;12m- [39m[38;5;14m[1mWeb Share API explainer[0m[38;5;12m (https://github.com/WICG/web-share/blob/master/docs/explainer.md) - An explanation of the API, along with some examples. Part of the proposal doc.[39m
[38;5;12m- [39m[38;5;14m[1mWeb Share Target API[0m[38;5;12m (https://github.com/WICG/web-share-target) - The proposal for the Web Share Target API, as well as a high level [39m[38;5;14m[1mexplainer[0m[38;5;12m (https://github.com/WICG/web-share-target/blob/master/docs/explainer.md).[39m

[38;2;255;187;0m[4mAwesome Performance[0m

[38;5;12m- [39m[38;5;14m[1mWeb Fundamentals - Performance[0m[38;5;12m (https://developers.google.com/web/fundamentals/performance/) - Google's performance learning portal, containing a wealth of knowledge on optimizing your web apps for perfomance.[39m
[38;5;12m- [39m[38;5;14m[1mIntroducing RAIL: A User-Centric Model For Performance[0m[38;5;12m (https://www.smashingmagazine.com/2015/10/rail-user-centric-model-performance/) - The seminal introduction to RAIL by the Gang of Pauls.[39m
[38;5;12m- [39m[38;5;14m[1mWebsite Performance Optimization[0m[38;5;12m (https://udacity.com/ud884) - A free Udacity course on optimizing websites for speed.[39m
[38;5;12m- [39m[38;5;14m[1mBrowser Rendering Optimization[0m[38;5;12m (https://udacity.com/ud860) - A free Udacity course helping you create web apps that maintain jank-free 60fps performance.[39m
[38;5;12m- [39m[38;5;14m[1mThe PRPL Pattern[0m[38;5;12m (https://developers.google.com/web/fundamentals/performance/prpl-pattern/) - A new pattern for structuring and serving Progressive Web Apps, with an emphasis on performance.[39m
[38;5;12m- [39m[38;5;14m[1mBrowser Rendering Performance[0m[38;5;12m (https://developers.google.com/web/fundamentals/performance/rendering/) - Understand how HTML, JavaScript and CSS is handled by the browser, and how to optimize your page accordingly.[39m

