update lists
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome Service Workers [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;12m [39m[38;2;255;187;0m[1m[4mAwesome Service Workers [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 service worker resources.[39m
|
||||
|
||||
|
||||
[38;5;12m>Service[39m[38;5;12m [39m[38;5;12mworkers[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mheart[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mevery[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;12mTheir[39m[38;5;12m [39m[38;5;12mpersistent[39m[38;5;12m [39m[38;5;12mnature[39m[38;5;12m [39m[38;5;12mallows[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;12mto[39m[38;5;12m [39m[38;5;12mfulfill[39m[38;5;12m [39m[38;5;12mour[39m[38;5;12m [39m[38;5;12mexpectations[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mdo.[39m[38;5;12m [39m[38;5;12mThey[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmissing[39m[38;5;12m [39m[38;5;12mlink[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mnative[39m[38;5;12m [39m[38;5;12mapps[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m
|
||||
[38;5;12mand[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mmodern[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;12mcan[39m[38;5;12m [39m[38;5;12mdo.[39m
|
||||
[38;5;12m>Service[39m[38;5;12m [39m[38;5;12mworkers[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mheart[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mevery[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;12mTheir[39m[38;5;12m [39m[38;5;12mpersistent[39m[38;5;12m [39m[38;5;12mnature[39m[38;5;12m [39m[38;5;12mallows[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;12mto[39m[38;5;12m [39m[38;5;12mfulfill[39m[38;5;12m [39m[38;5;12mour[39m[38;5;12m [39m[38;5;12mexpectations[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mdo.[39m[38;5;12m [39m[38;5;12mThey[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmissing[39m[38;5;12m [39m[38;5;12mlink[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mnative[39m[38;5;12m [39m[38;5;12mapps[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m
|
||||
[38;5;12mmodern[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;12mcan[39m[38;5;12m [39m[38;5;12mdo.[39m
|
||||
[38;5;11m[1m▐[0m[38;5;12m [39m
|
||||
[38;5;11m[1m▐[0m[38;5;12m [39m[38;5;12m-- [39m
|
||||
|
||||
@@ -23,8 +23,7 @@
|
||||
|
||||
[38;2;255;187;0m[4mMust Reads[0m
|
||||
|
||||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mBuilding[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[1mApps[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mO'Reilly[0m[38;5;12m [39m[38;5;12m(https://pwabook.com/oreillyasw)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mhands-on[39m[38;5;12m [39m[38;5;12mguide[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mreference[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mworkers,[39m[38;5;12m [39m[38;5;12mcaching[39m[38;5;12m [39m[38;5;12mstrategies,[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;12mmore.[39m[38;5;12m [39m[38;5;12mEverything[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mneed[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mmodern[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;14m[1mBuilding Progressive Web Apps - O'Reilly[0m[38;5;12m (https://pwabook.com/oreillyasw) - A hands-on guide and reference for service workers, caching strategies, push notifications, and more. Everything you need to build a modern progressive web app.[39m
|
||||
[38;5;12m- [39m[38;5;14m[1mIntroduction to Service Worker[0m[38;5;12m (http://www.html5rocks.com/en/tutorials/service-worker/introduction/) - A gentle introduction to service workers.[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 great Udacity course introducing service workers and IndexedDB.[39m
|
||||
[38;5;12m- [39m[38;5;14m[1mService Workers Explained[0m[38;5;12m (https://github.com/slightlyoff/ServiceWorker/blob/master/explainer.md) - Service workers explained by [39m[38;5;14m[1mAlex Russell[0m[38;5;12m (https://github.com/slightlyoff).[39m
|
||||
@@ -62,15 +61,15 @@
|
||||
|
||||
[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[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;12m [39m[38;5;14m[1mInstant[0m[38;5;14m[1m [0m[38;5;14m[1mLoading[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mService[0m[38;5;14m[1m [0m[38;5;14m[1mWorkers[0m[38;5;14m[1m [0m[38;5;14m[1m(Chrome[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[1m2015)[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=jCKZDTtUA2A)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mExplains[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mstructure[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;12moptimize[39m[38;5;12m [39m[38;5;12mload[39m[38;5;12m [39m[38;5;12mtime[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12minitial[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mreturn[39m[38;5;12m [39m[38;5;12mvisitors,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcover[39m[38;5;12m [39m[38;5;12mhelpful[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m
|
||||
[38;5;12mworker[39m[38;5;12m [39m[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mminimize[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mamount[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mboilerplate[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12myou'll[39m[38;5;12m [39m[38;5;12mhave[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mwrite.[39m
|
||||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mInstant[0m[38;5;14m[1m [0m[38;5;14m[1mLoading[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mService[0m[38;5;14m[1m [0m[38;5;14m[1mWorkers[0m[38;5;14m[1m [0m[38;5;14m[1m(Chrome[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[1m2015)[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=jCKZDTtUA2A)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mExplains[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mstructure[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;12moptimize[39m[38;5;12m [39m[38;5;12mload[39m[38;5;12m [39m[38;5;12mtime[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12minitial[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mreturn[39m[38;5;12m [39m[38;5;12mvisitors,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcover[39m[38;5;12m [39m[38;5;12mhelpful[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mworker[39m[38;5;12m [39m
|
||||
[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mminimize[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mamount[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mboilerplate[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12myou'll[39m[38;5;12m [39m[38;5;12mhave[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mwrite.[39m
|
||||
|
||||
[38;2;255;187;0m[4mCase Studies[0m
|
||||
|
||||
[38;5;12m- [39m[38;5;14m[1mService Workers in Production[0m[38;5;12m (https://developers.google.com/web/showcase/case-study/service-workers-iowa) - A case-study about how Google I/O 2015 web app was built.[39m
|
||||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mMeasuring[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mReal-world[0m[38;5;14m[1m [0m[38;5;14m[1mPerformance[0m[38;5;14m[1m [0m[38;5;14m[1mImpact[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mService[0m[38;5;14m[1m [0m[38;5;14m[1mWorkers[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/showcase/2016/service-worker-perf)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mOne[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmost[39m[38;5;12m [39m[38;5;12msignificant[39m[38;5;12m [39m[38;5;12mbenefits[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mworkers[39m[38;5;12m [39m[38;5;12m(from[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mperformance[39m[38;5;12m [39m[38;5;12mperspective,[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mleast)[39m[38;5;12m [39m
|
||||
[38;5;12mis[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mability[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mproactively[39m[38;5;12m [39m[38;5;12mcontrol[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcaching[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12massets.[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mcache[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mits[39m[38;5;12m [39m[38;5;12mnecessary[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mload[39m[38;5;12m [39m[38;5;12msubstantially[39m[38;5;12m [39m[38;5;12mfaster[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mreturning[39m[38;5;12m [39m[38;5;12mvisitors.[39m[38;5;12m [39m[38;5;12mBut[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mgains[39m[38;5;12m [39m[38;5;12mactually[39m[38;5;12m [39m[38;5;12mlook[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreal[39m[38;5;12m [39m
|
||||
[38;5;12musers?[39m[38;5;12m [39m[38;5;12mAnd[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12meven[39m[38;5;12m [39m[38;5;12mmeasure[39m[38;5;12m [39m[38;5;12mthis?[39m
|
||||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mMeasuring[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mReal-world[0m[38;5;14m[1m [0m[38;5;14m[1mPerformance[0m[38;5;14m[1m [0m[38;5;14m[1mImpact[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mService[0m[38;5;14m[1m [0m[38;5;14m[1mWorkers[0m[38;5;12m [39m[38;5;12m(https://developers.google.com/web/showcase/2016/service-worker-perf)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mOne[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmost[39m[38;5;12m [39m[38;5;12msignificant[39m[38;5;12m [39m[38;5;12mbenefits[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mservice[39m[38;5;12m [39m[38;5;12mworkers[39m[38;5;12m [39m[38;5;12m(from[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mperformance[39m[38;5;12m [39m[38;5;12mperspective,[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mleast)[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m
|
||||
[38;5;12mability[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mproactively[39m[38;5;12m [39m[38;5;12mcontrol[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcaching[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12massets.[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mcache[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mits[39m[38;5;12m [39m[38;5;12mnecessary[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mload[39m[38;5;12m [39m[38;5;12msubstantially[39m[38;5;12m [39m[38;5;12mfaster[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mreturning[39m[38;5;12m [39m[38;5;12mvisitors.[39m[38;5;12m [39m[38;5;12mBut[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mgains[39m[38;5;12m [39m[38;5;12mactually[39m[38;5;12m [39m[38;5;12mlook[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreal[39m[38;5;12m [39m[38;5;12musers?[39m[38;5;12m [39m[38;5;12mAnd[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mdo[39m[38;5;12m [39m
|
||||
[38;5;12myou[39m[38;5;12m [39m[38;5;12meven[39m[38;5;12m [39m[38;5;12mmeasure[39m[38;5;12m [39m[38;5;12mthis?[39m
|
||||
|
||||
[38;2;255;187;0m[4mRelated Technologies[0m
|
||||
|
||||
@@ -79,3 +78,5 @@
|
||||
[38;5;12m- [39m[38;5;14m[1mCacheStorage API[0m[38;5;12m (https://github.com/TalAter/awesome-progressive-web-apps#cachestorage-api)[39m
|
||||
[38;5;12m- [39m[38;5;14m[1mIndexedDB[0m[38;5;12m (https://github.com/TalAter/awesome-progressive-web-apps#indexeddb)[39m
|
||||
[38;5;12m- [39m[38;5;14m[1mPush Notifications[0m[38;5;12m (https://github.com/TalAter/awesome-progressive-web-apps#push-notifications)[39m
|
||||
|
||||
[38;5;12mserviceworkers Github: https://github.com/TalAter/awesome-service-workers[39m
|
||||
|
||||
Reference in New Issue
Block a user