Knowledge

Progressive web app

Source 📝

20: 776:
or if there is an update to the service worker. Activation occurs when all of the PWA's pages are closed, so that there is no conflict between the previous version and the updated one. The lifecycle also helps maintain consistency when switching among versions of a service worker since only a single service worker can be active for a domain.
775:
Service workers go through a three-step lifecycle of Registration, Installation and Activation. Registration involves telling the browser the location of the service worker in preparation for installation. Installation occurs when there is no service worker installed in the browser for the web app,
766:
that implements a programmable network proxy that can respond to web/HTTP requests from the main document. It is able to check the availability of a remote server, cache content when that server is available, and serve that content later to the document. Service workers, like any other web workers,
445:. To varying degrees, the major app stores support the publication of PWAs. Google Play, Microsoft Store, and Samsung Galaxy Store support PWAs, but Apple App Store does not. Microsoft Store publishes some qualifying PWAs automatically (even without app authors' requests) after discovering them via 619:
There are many technologies commonly used to create progressive web apps. A web application is considered a PWA if it satisfies the installation criteria, thus can work offline and can be added to the device's home screen. To meet this definition, all PWAs require at minimum a service worker and a
735:
Web Storage is a W3C standard API that enables key-value storage in modern browsers. The API consists of two objects, sessionStorage (that enables session-only storage that gets wiped upon browser session end) and localStorage (that enables storage that persists across sessions).
328:, and the screen-size flexibility it provides have made PWA development more accessible. Continued enhancements to HTML, CSS, and JavaScript allowed web applications to incorporate greater levels of interactivity, making native-like experiences possible on a website. 674:
Safari partially implements manifests, while most of the PWA metadata can be defined via Apple-specific extensions to the meta tags. These tags allow developers to enable full-screen display, define icons and splash screens, and specify a name for the application.
313:, as a means of appeasing frustrated developers. In October 2007 Jobs announced that an SDK would be launched the following year. As a result, although Apple continued to support web apps, the vast majority of iOS applications shifted toward the App Store. 375:(OS). Google then put significant efforts into promoting PWA development for Android. Firefox introduced support for service workers in 2016, and Microsoft Edge and Apple Safari followed in 2018, making service workers available on all major systems. 554:(with 192 px and a 512 px versions). Information contained in the manifest makes PWAs easily shareable via a URL, discoverable by search engines, and alleviates complex installation procedures (but PWAs still be listed in a third-party 409:" configuration that had been available as an experimental feature). A Firefox architect noted: "The signal I hope we are sending is that PWA support is not coming to desktop Firefox anytime soon." Mozilla still plans to support PWAs on Android. 720:
Progressive Web App execution contexts get unloaded whenever possible, so progressive web apps need to store the majority of their long-term internal state (user data, dynamically loaded application resources) in one of the following manner:
90:, it does not require separate bundling or distribution. Developers can simply publish the web application online, ensure that it meets baseline installation requirements and ensure that users will be able to add the application to their 832: 771:
and synchronize data in the background, cache or retrieve resource requests, intercept network requests and receive centralized updates independently of the document that registered them, even when that document is not loaded.
346:
rendering engine with a user interface called Gaia, written in HTML5. The development of Firefox OS ended in 2016, and the project was completely discontinued in 2017, although a fork of Firefox OS was used as the basis of
591:
provides a PWA that is 99.84% smaller than its equivalent iOS app. After deploying its PWA, Starbucks doubled the number of online orders, with desktop users ordering at about the same rate as mobile app users.
492:
The technical baseline criteria for a site to be considered a progressive web app and therefore capable of being installed by browsers were described by Russell in a follow-up post and updated since:
1818: 511:, which caches content after the first use and then rely on various heuristics to guess when content is no longer needed, programmable caches can explicitly prefetch content in advance 429:, it does not require separate bundling or distribution. In particular, there is no requirement for developers or users to install web apps via digital distribution systems like the 461:. As with other cross-platform solutions, the goal is to help developers build cross-platform apps more easily than they would with native apps. Progressive web apps employ the 1214: 1685: 515:
it's used for the first time and explicitly discard it when it is no longer needed. This requirement helps pages to be accessible offline or on low-quality networks.
611:
saw an 84% decrease in time until the page is interactive, leading to a 17% increase in conversions and a 53% increase in mobile sessions on iOS with their PWA.
1012:
Angle, Patrick; Avenard, Jean-Yves; Caceres, Marcos; Cannon, Ada Rose; Carlson, Eric; Davidson, Garrett; Davis, Jon; Dubost, Karl; Eidson, Brady (2023-06-06).
754:
objects and any structures representable as a string. The Indexed Database API can be used with a wrapper library providing additional constructs around it.
507:
Register a service worker with a fetch handler. Progressive web apps must use service workers to create programmable content caches. Unlike regular HTTP
363:
engineer Alex Russell coined the term "progressive web apps" to describe apps taking advantage of new features supported by modern browsers, including
468:
Some progressive web apps use an architectural approach called the App Shell Model. In this model, service workers store the Basic User Interface or "
2179: 2169: 603:'s PWA spent 40% more time on the site compared to the previous mobile website. Ad revenue rates also increased by 44%, and core engagements by 60%. 750:
Indexed Database API is a W3C standard database API available in all major browsers. The API is supported by modern browsers and enables storage of
1392: 1190: 480:. This model allows for PWAs to maintain native-like use with or without web connectivity. This can improve loading time, by providing an 1037:
Angle, Patrick; Caceres, Marcos; Caliman, Razvan; Davis, Jon; Eidson, Brady; Hatcher, Timothy; Niwa, Ryosuke; Simmons, Jen (2023-03-27).
1608: 1659: 2161: 2065: 1980: 1267: 1110: 1407: 1063: 987: 2216: 1369: 842: 1240: 222: 706: 1800: 1497: 1013: 2146: 1164: 1431: 2690: 2131: 961: 405:
In December 2020, Firefox for desktop abandoned the implementation of PWAs (specifically, removed the prototype "
290: 2345: 2484: 806: 663:
This metadata is crucial for an app to be added to a home screen or otherwise listed alongside native apps.
2211: 2058: 2008: 1734: 1215:"KaiOS, a feature phone platform built on the ashes of Firefox OS, adds Facebook, Twitter and Google apps" 934: 2700: 2365: 2221: 2201: 2174: 1471: 1456: 558:). Furthermore, PWAs support native app-style interactions and navigation, including being added to the 2547: 2241: 2236: 636:-based manifest (usually labelled manifest.json) to provide developers with a centralized place to put 580: 164: 2802: 2764: 2534: 2447: 2341: 1886: 698: 629: 1710: 861: 457:
Progressive web apps are all designed to work on any browser that is compliant with the appropriate
2126: 1955: 697:
can be added to web apps. Announced in 2015 and first released in March 2017, WebAssembly became a
694: 497: 302: 2425: 1887:"WebAssembly 1.0 Becomes a W3C Recommendation and the Fourth Language to Run Natively in Browsers" 484:, a layout or architecture into which content can be loaded progressively as well as dynamically. 2769: 2567: 2051: 1343: 693:
code to run in a web browser, at near-native speed. Thus, libraries written in languages such as
462: 1836: 1038: 2253: 2091: 1633: 180: 95: 52: 1758: 2489: 2442: 2372: 2141: 473: 406: 325: 218: 1293: 587:
apps. According to Twitter, Twitter Lite consumed only 1–3% of the size of the native apps.
2562: 2430: 2261: 1567: 745: 442: 306: 254: 110: 40: 607:
saw 60% of customers who had uninstalled their native app return to use the Flipkart PWA.
8: 2557: 2395: 2184: 1542: 214: 210: 114: 2231: 1782: 910: 2672: 2494: 2360: 768: 305:(SDK) was required, and the apps would be fully integrated into the device through the 1408:"Publish your Progressive Web App to the Microsoft Store - Microsoft Edge Development" 1137: 2685: 2316: 1386: 838: 785: 477: 469: 383: 310: 149: 1085: 2754: 2735: 2676: 2646: 2636: 426: 372: 343: 342:
for running web apps as native apps on mobile devices. Firefox OS was based on the
339: 317: 68: 371:, that let users upgrade web apps to progressive web applications in their native 2759: 2730: 2189: 438: 430: 321: 87: 2552: 2524: 2479: 446: 379: 206: 118: 44: 2796: 2781: 2742: 2720: 2607: 2509: 2457: 2194: 563: 519: 458: 387: 378:
By 2019, PWAs were supported by desktop versions of most browsers, including
368: 360: 202: 106: 72: 19: 2680: 2336: 2206: 1931: 1142: 767:
work separately from the main document context. Service workers can handle
500:
and have no active mixed content. Progressive web apps must be served via
2577: 2514: 2408: 2386: 2332: 2082: 730: 690: 684: 559: 434: 336: 99: 91: 64: 60: 2519: 2499: 2474: 2420: 2413: 2301: 2281: 763: 364: 332: 294: 56: 608: 301:
would "run applications created with Web 2.0 Internet standards". No
2542: 2504: 2296: 2151: 1862: 1594: 1318: 600: 588: 555: 508: 1518: 63:. It is intended to work on any platform with a standards-compliant 2725: 2582: 2350: 2311: 2306: 2286: 2276: 2271: 2037: 1165:"Mozilla ends commercial Firefox OS development - gHacks Tech News" 637: 604: 395: 1111:"Jobs' original vision for the iPhone: No third-party native apps" 885: 2695: 2641: 2437: 2355: 2136: 2074: 2043: 1759:"Instant Loading Web Apps with an Application Shell Architecture" 709: 702: 576: 422: 418: 230: 122: 83: 79: 579:
released Twitter Lite, a PWA alternative to the official native
2652: 2592: 2587: 2466: 2266: 2119: 2109: 2104: 1374: 1294:"Progressive Web Apps Are Here and They're Changing Everything" 1261: 1259: 1257: 596: 298: 173: 1609:"Twitter's app is helping stop phones from strangling the web" 1191:"Mozilla is stopping all commercial development on Firefox OS" 1086:"App Store Year Zero: Unsweet web apps drove iPhone to an SDK" 522:. The manifest must contain at least the five key properties: 94:. Publishing the app to digital distribution systems like the 2620: 2615: 2597: 2403: 2114: 1380:
We have no plans of sunsetting PWAs on mobile that I know of.
1241:"Progressive Web Apps: Escaping Tabs Without Losing Our Soul" 501: 399: 391: 348: 159: 154: 105:
As of 2021, PWA features are supported to varying degrees by
1432:"The first batch of Windows 10 Progressive Web Apps is here" 1254: 2747: 2226: 2099: 1911: 935:"Firefox just walked away from a key piece of the open web" 751: 633: 504:
to ensure user privacy, security, and content authenticity.
48: 1686:"Why Progressive Web Apps Will Replace Native Mobile Apps" 320:
allowed web technologies to be used to create interactive
2572: 2291: 1634:"12 Best Examples of Progressive Web Apps (PWAs) in 2021" 1011: 671: 584: 169: 1660:"A Pinterest Progressive Web App Performance Case Study" 1036: 807:"What are Progressive Web Apps? PWA Guide for Beginners" 788:, an open-source audit tool for PWAs developed by Google 2003: 2001: 701:
recommendation on December 5, 2019 and it received the
1860: 1188: 1014:"News from WWDC23: WebKit Features in Safari 17 beta" 309:
browser engine. This model was later switched to the
1998: 1064:"iPhone to Support Third-Party Web 2.0 Applications" 659:
The option to set the display mode, e.g. full screen
1079: 1077: 903: 1319:"Can I use... Support tables for HTML5, CSS3, etc" 1801:"What's new on iOS 12.2 for Progressive Web Apps" 928: 926: 924: 922: 920: 2794: 1232: 1074: 47:, built using common web technologies including 650:The preferred URL to launch or open the web app 1589: 1587: 917: 570: 2059: 1909: 1268:"Apple goes back to the future with web apps" 640:associated with a web application including: 1498:"What, Exactly, Makes a Progressive Web App" 1103: 496:Originate from a secure origin. Served over 16:Specific form of single page web application 1829: 1584: 1463: 1391:: CS1 maint: numeric names: authors list ( 1285: 647:Links to the web app icons or image objects 2066: 2052: 1948: 962:"Progressive Web Apps on Windows overview" 1606: 1568:"Service worker caching and HTTP caching" 1061: 878: 476:web application in the browser's offline 417:Since a progressive web app is a type of 78:Since a progressive web app is a type of 1683: 1472:"The App Shell Model | Web Fundamentals" 1189:Hoffman, Chris; PCWorld | (2016-09-28). 487: 18: 1083: 739: 359:In 2015, designer Frances Berriman and 354: 2795: 2009:"Introduction to Service Worker | Web" 1932:"Programming Languages Software Award" 1657: 1519:"What does it take to be installable?" 1405: 1341: 1291: 956: 954: 932: 2047: 1367: 1265: 862:"Progressive Web Apps | Software AG" 856: 854: 703:Programming Languages Software Award 1973: 1607:Shankland, Stephen (30 July 2020). 1062:Jobs, Steve; Apple (11 June 2007). 951: 13: 2073: 1469: 757: 656:Default orientation of the web app 452: 128: 14: 2814: 2031: 1684:Gazdecki, Andrew (9 March 2018). 1658:Osmani, Addy (30 November 2017). 1595:"Web App Manifest", Working Draft 1344:"Progressive Web Apps on Desktop" 851: 1863:"WebAssembly Core Specification" 1266:Evans, Jonny (26 January 2018). 1039:"WebKit Features in Safari 16.4" 267: 264: 258: 197: 1924: 1903: 1879: 1854: 1811: 1793: 1775: 1751: 1727: 1703: 1677: 1651: 1626: 1600: 1560: 1535: 1511: 1489: 1449: 1424: 1399: 1361: 1335: 1311: 1292:Ladage, Aaron (17 April 2018). 1207: 1182: 1157: 1136:Marcotte, Ethan (25 May 2010). 1129: 1055: 1030: 834:Mastering Front-end development 830: 715: 644:The name of the web application 614: 291:Worldwide Developers Conference 284: 2038:Web Applications Working Group 1867:World Wide Web Consortium (W3) 1819:"Configuring Web Applications" 1597:, retrieved 12 September 2016. 1084:Ritchie, Rene (5 March 2018). 1005: 980: 837:. Cybellium Ltd. p. 273. 824: 799: 724: 678: 666: 653:The web app configuration data 1: 792: 316:Beginning in the early 2010s 1910:Kantha Nguyen (2022-05-01). 1342:LePage, Pete (4 June 2019). 966:Microsoft Edge Documentation 933:Newman, Jared (2021-01-26). 351:, a feature phone platform. 7: 1981:"Concepts behind IndexedDB" 1861:World Wide Web Consortium. 779: 623: 595:A 2018 review published by 571:Comparison with native apps 335:. It was intended to be an 29:progressive web application 10: 2819: 1783:"Web Manifest Docs on MDN" 1368:agi90 (19 December 2020). 911:"Is Service Worker Ready?" 743: 728: 682: 628:The web app manifest is a 465:web development strategy. 331:In 2013, Mozilla released 279: 2713: 2665: 2629: 2606: 2533: 2465: 2456: 2394: 2385: 2325: 2252: 2160: 2090: 2081: 1739:Mozilla Developer Network 1715:Mozilla Developer Network 699:World Wide Web Consortium 632:specification defining a 412: 143: 140: 137: 1823:Safari Web Content Guide 866:techradar.softwareag.com 303:software development kit 1138:"Responsive Web Design" 463:progressive enhancement 1837:"WebAssembly Concepts" 1541: 1495: 1238: 1169:gHacks Technology News 1135: 762:A service worker is a 599:, found that users of 43:delivered through the 24: 1735:"Network independent" 1543:"Progressive Web App" 1457:"The App Shell Model" 488:Installation criteria 474:responsive web design 407:site-specific browser 326:Responsive web design 22: 746:Indexed Database API 740:Indexed Database API 518:Reference a web app 482:initial static frame 443:Samsung Galaxy Store 355:Initial introduction 41:application software 689:WebAssembly allows 297:announced that the 134: 115:Firefox for Android 37:progressive web app 2361:Application server 2040:index of standards 1412:docs.microsoft.com 1221:. 26 February 2018 769:push notifications 133: 25: 2790: 2789: 2709: 2708: 2686:Browser extension 2661: 2660: 2381: 2380: 2317:Phusion Passenger 2013:Google Developers 1956:"Web Storage API" 1763:Google Developers 1476:Google Developers 1348:Google Developers 1117:. 21 October 2011 988:"Get your PWA on" 913:. Jake Archibald. 844:979-8-8668-4882-9 786:Google Lighthouse 538:(with a value of 369:web app manifests 318:dynamic web pages 277: 276: 2810: 2803:Web applications 2755:Web API security 2677:Remote scripting 2647:Web SQL Database 2463: 2462: 2392: 2391: 2088: 2087: 2068: 2061: 2054: 2045: 2044: 2025: 2024: 2022: 2020: 2005: 1996: 1995: 1993: 1991: 1977: 1971: 1970: 1968: 1966: 1952: 1946: 1945: 1943: 1942: 1928: 1922: 1921: 1919: 1918: 1907: 1901: 1900: 1898: 1897: 1883: 1877: 1876: 1874: 1873: 1858: 1852: 1851: 1849: 1847: 1833: 1827: 1826: 1815: 1809: 1808: 1807:. 27 March 2019. 1797: 1791: 1790: 1779: 1773: 1772: 1770: 1769: 1755: 1749: 1748: 1746: 1745: 1731: 1725: 1724: 1722: 1721: 1707: 1701: 1700: 1698: 1696: 1681: 1675: 1674: 1672: 1670: 1664:ChromiumDev team 1655: 1649: 1648: 1646: 1645: 1630: 1624: 1623: 1621: 1619: 1604: 1598: 1591: 1582: 1581: 1579: 1578: 1564: 1558: 1557: 1555: 1553: 1539: 1533: 1532: 1530: 1529: 1515: 1509: 1508: 1506: 1504: 1493: 1487: 1486: 1484: 1482: 1467: 1461: 1460: 1453: 1447: 1446: 1444: 1443: 1428: 1422: 1421: 1419: 1418: 1403: 1397: 1396: 1390: 1382: 1365: 1359: 1358: 1356: 1354: 1339: 1333: 1332: 1330: 1329: 1315: 1309: 1308: 1306: 1304: 1289: 1283: 1282: 1280: 1278: 1263: 1252: 1251: 1249: 1247: 1236: 1230: 1229: 1227: 1226: 1211: 1205: 1204: 1202: 1201: 1186: 1180: 1179: 1177: 1176: 1161: 1155: 1154: 1152: 1150: 1133: 1127: 1126: 1124: 1122: 1107: 1101: 1100: 1098: 1096: 1081: 1072: 1071: 1059: 1053: 1052: 1050: 1049: 1034: 1028: 1027: 1025: 1024: 1009: 1003: 1002: 1000: 999: 984: 978: 977: 975: 973: 958: 949: 948: 946: 945: 930: 915: 914: 907: 901: 900: 898: 896: 886:"Can I use pwa?" 882: 876: 875: 873: 872: 858: 849: 848: 831:Ltd, Cybellium. 828: 822: 821: 819: 818: 811:freeCodeCamp.org 803: 553: 549: 545: 541: 537: 533: 529: 525: 373:operating system 340:operating system 322:web applications 135: 132: 2818: 2817: 2813: 2812: 2811: 2809: 2808: 2807: 2793: 2792: 2791: 2786: 2760:Web application 2705: 2657: 2625: 2602: 2529: 2452: 2377: 2321: 2248: 2227:JavaScript JSGI 2207:ASP.NET Handler 2190:Jakarta Servlet 2156: 2077: 2072: 2034: 2029: 2028: 2018: 2016: 2007: 2006: 1999: 1989: 1987: 1979: 1978: 1974: 1964: 1962: 1954: 1953: 1949: 1940: 1938: 1936:www.sigplan.org 1930: 1929: 1925: 1916: 1914: 1908: 1904: 1895: 1893: 1885: 1884: 1880: 1871: 1869: 1859: 1855: 1845: 1843: 1835: 1834: 1830: 1817: 1816: 1812: 1799: 1798: 1794: 1781: 1780: 1776: 1767: 1765: 1757: 1756: 1752: 1743: 1741: 1733: 1732: 1728: 1719: 1717: 1709: 1708: 1704: 1694: 1692: 1682: 1678: 1668: 1666: 1656: 1652: 1643: 1641: 1632: 1631: 1627: 1617: 1615: 1605: 1601: 1592: 1585: 1576: 1574: 1566: 1565: 1561: 1551: 1549: 1540: 1536: 1527: 1525: 1517: 1516: 1512: 1502: 1500: 1496:Russell, Alex. 1494: 1490: 1480: 1478: 1468: 1464: 1455: 1454: 1450: 1441: 1439: 1436:Windows Central 1430: 1429: 1425: 1416: 1414: 1404: 1400: 1384: 1383: 1366: 1362: 1352: 1350: 1340: 1336: 1327: 1325: 1317: 1316: 1312: 1302: 1300: 1290: 1286: 1276: 1274: 1264: 1255: 1245: 1243: 1239:Russell, Alex. 1237: 1233: 1224: 1222: 1213: 1212: 1208: 1199: 1197: 1187: 1183: 1174: 1172: 1163: 1162: 1158: 1148: 1146: 1134: 1130: 1120: 1118: 1109: 1108: 1104: 1094: 1092: 1082: 1075: 1060: 1056: 1047: 1045: 1035: 1031: 1022: 1020: 1010: 1006: 997: 995: 992:Vivaldi Browser 986: 985: 981: 971: 969: 968:. 13 March 2021 960: 959: 952: 943: 941: 931: 918: 909: 908: 904: 894: 892: 884: 883: 879: 870: 868: 860: 859: 852: 845: 829: 825: 816: 814: 805: 804: 800: 795: 782: 760: 758:Service workers 748: 742: 733: 727: 718: 687: 681: 669: 626: 617: 573: 551: 547: 543: 539: 535: 531: 527: 523: 490: 455: 453:Characteristics 439:Microsoft Store 431:Apple App Store 427:web application 415: 365:service workers 357: 287: 282: 131: 129:Browser support 96:Apple App Store 88:web application 39:, is a type of 17: 12: 11: 5: 2816: 2806: 2805: 2788: 2787: 2785: 2784: 2779: 2778: 2777: 2772: 2767: 2757: 2752: 2751: 2750: 2740: 2739: 2738: 2733: 2723: 2717: 2715: 2711: 2710: 2707: 2706: 2704: 2703: 2698: 2693: 2688: 2683: 2669: 2667: 2663: 2662: 2659: 2658: 2656: 2655: 2650: 2649:(formerly W3C) 2644: 2639: 2633: 2631: 2627: 2626: 2624: 2623: 2618: 2612: 2610: 2604: 2603: 2601: 2600: 2595: 2590: 2585: 2580: 2575: 2570: 2565: 2560: 2555: 2550: 2545: 2539: 2537: 2531: 2530: 2528: 2527: 2525:XMLHttpRequest 2522: 2517: 2512: 2507: 2502: 2497: 2492: 2487: 2482: 2477: 2471: 2469: 2460: 2454: 2453: 2451: 2450: 2445: 2440: 2435: 2434: 2433: 2423: 2418: 2417: 2416: 2411: 2400: 2398: 2389: 2383: 2382: 2379: 2378: 2376: 2375: 2370: 2369: 2368: 2358: 2353: 2348: 2339: 2329: 2327: 2323: 2322: 2320: 2319: 2314: 2309: 2304: 2299: 2294: 2289: 2284: 2279: 2274: 2269: 2264: 2258: 2256: 2254:Apache modules 2250: 2249: 2247: 2246: 2245: 2244: 2234: 2229: 2224: 2219: 2214: 2209: 2204: 2199: 2198: 2197: 2187: 2182: 2177: 2172: 2166: 2164: 2158: 2157: 2155: 2154: 2149: 2144: 2139: 2134: 2129: 2124: 2123: 2122: 2117: 2112: 2107: 2096: 2094: 2085: 2079: 2078: 2075:Web interfaces 2071: 2070: 2063: 2056: 2048: 2042: 2041: 2033: 2032:External links 2030: 2027: 2026: 1997: 1972: 1947: 1923: 1902: 1878: 1853: 1828: 1810: 1792: 1774: 1750: 1726: 1711:"Discoverable" 1702: 1676: 1650: 1625: 1599: 1583: 1559: 1534: 1510: 1488: 1470:Osmani, Addi. 1462: 1448: 1423: 1398: 1360: 1334: 1310: 1284: 1253: 1231: 1206: 1181: 1156: 1128: 1102: 1073: 1054: 1029: 1004: 979: 950: 916: 902: 877: 850: 843: 823: 797: 796: 794: 791: 790: 789: 781: 778: 759: 756: 744:Main article: 741: 738: 729:Main article: 726: 723: 717: 714: 683:Main article: 680: 677: 668: 665: 661: 660: 657: 654: 651: 648: 645: 625: 622: 616: 613: 572: 569: 568: 567: 564:splash screens 516: 505: 489: 486: 454: 451: 414: 411: 380:Microsoft Edge 356: 353: 286: 283: 281: 278: 275: 274: 272: 269: 266: 263: 260: 257: 251: 250: 248: 245: 242: 239: 236: 233: 227: 226: 207:Microsoft Edge 199: 196: 193: 190: 187: 184: 177: 176: 167: 162: 157: 152: 146: 145: 142: 139: 130: 127: 119:Microsoft Edge 73:mobile devices 15: 9: 6: 4: 3: 2: 2815: 2804: 2801: 2800: 2798: 2783: 2782:Web framework 2780: 2776: 2773: 2771: 2768: 2766: 2763: 2762: 2761: 2758: 2756: 2753: 2749: 2746: 2745: 2744: 2743:Web standards 2741: 2737: 2734: 2732: 2729: 2728: 2727: 2724: 2722: 2721:Microservices 2719: 2718: 2716: 2712: 2702: 2699: 2697: 2694: 2692: 2689: 2687: 2684: 2682: 2678: 2674: 2671: 2670: 2668: 2664: 2654: 2651: 2648: 2645: 2643: 2640: 2638: 2635: 2634: 2632: 2628: 2622: 2619: 2617: 2614: 2613: 2611: 2609: 2605: 2599: 2596: 2594: 2591: 2589: 2586: 2584: 2581: 2579: 2576: 2574: 2571: 2569: 2566: 2564: 2561: 2559: 2556: 2554: 2551: 2549: 2546: 2544: 2541: 2540: 2538: 2536: 2532: 2526: 2523: 2521: 2518: 2516: 2513: 2511: 2510:Web messaging 2508: 2506: 2503: 2501: 2498: 2496: 2493: 2491: 2488: 2486: 2483: 2481: 2478: 2476: 2473: 2472: 2470: 2468: 2464: 2461: 2459: 2455: 2449: 2446: 2444: 2441: 2439: 2436: 2432: 2429: 2428: 2427: 2424: 2422: 2419: 2415: 2412: 2410: 2407: 2406: 2405: 2402: 2401: 2399: 2397: 2393: 2390: 2388: 2384: 2374: 2371: 2367: 2364: 2363: 2362: 2359: 2357: 2354: 2352: 2349: 2347: 2343: 2340: 2338: 2334: 2331: 2330: 2328: 2324: 2318: 2315: 2313: 2310: 2308: 2305: 2303: 2300: 2298: 2295: 2293: 2290: 2288: 2285: 2283: 2280: 2278: 2275: 2273: 2270: 2268: 2265: 2263: 2260: 2259: 2257: 2255: 2251: 2243: 2240: 2239: 2238: 2235: 2233: 2230: 2228: 2225: 2223: 2220: 2218: 2215: 2213: 2210: 2208: 2205: 2203: 2200: 2196: 2193: 2192: 2191: 2188: 2186: 2183: 2181: 2178: 2176: 2173: 2171: 2168: 2167: 2165: 2163: 2159: 2153: 2150: 2148: 2145: 2143: 2140: 2138: 2135: 2133: 2130: 2128: 2125: 2121: 2118: 2116: 2113: 2111: 2108: 2106: 2103: 2102: 2101: 2098: 2097: 2095: 2093: 2089: 2086: 2084: 2080: 2076: 2069: 2064: 2062: 2057: 2055: 2050: 2049: 2046: 2039: 2036: 2035: 2014: 2010: 2004: 2002: 1986: 1982: 1976: 1961: 1957: 1951: 1937: 1933: 1927: 1913: 1906: 1892: 1888: 1882: 1868: 1864: 1857: 1842: 1838: 1832: 1824: 1820: 1814: 1806: 1802: 1796: 1788: 1784: 1778: 1764: 1760: 1754: 1740: 1736: 1730: 1716: 1712: 1706: 1691: 1687: 1680: 1665: 1661: 1654: 1639: 1635: 1629: 1614: 1610: 1603: 1596: 1590: 1588: 1573: 1569: 1563: 1548: 1544: 1538: 1524: 1520: 1514: 1499: 1492: 1477: 1473: 1466: 1458: 1452: 1437: 1433: 1427: 1413: 1409: 1402: 1394: 1388: 1381: 1377: 1376: 1371: 1364: 1349: 1345: 1338: 1324: 1320: 1314: 1299: 1295: 1288: 1273: 1272:Computerworld 1269: 1262: 1260: 1258: 1242: 1235: 1220: 1216: 1210: 1196: 1192: 1185: 1170: 1166: 1160: 1145: 1144: 1139: 1132: 1116: 1112: 1106: 1091: 1087: 1080: 1078: 1069: 1065: 1058: 1044: 1040: 1033: 1019: 1015: 1008: 993: 989: 983: 967: 963: 957: 955: 940: 936: 929: 927: 925: 923: 921: 912: 906: 891: 887: 881: 867: 863: 857: 855: 846: 840: 836: 835: 827: 812: 808: 802: 798: 787: 784: 783: 777: 773: 770: 765: 755: 753: 747: 737: 732: 722: 713: 711: 708: 704: 700: 696: 692: 686: 676: 673: 664: 658: 655: 652: 649: 646: 643: 642: 641: 639: 635: 631: 621: 612: 610: 606: 602: 598: 593: 590: 586: 582: 578: 565: 562:, displaying 561: 557: 521: 517: 514: 510: 506: 503: 499: 495: 494: 493: 485: 483: 479: 475: 471: 466: 464: 460: 459:web standards 450: 448: 444: 440: 436: 432: 428: 424: 420: 410: 408: 403: 401: 397: 393: 390:(on Windows, 389: 388:Google Chrome 385: 381: 376: 374: 370: 366: 362: 361:Google Chrome 352: 350: 345: 341: 338: 334: 329: 327: 323: 319: 314: 312: 308: 304: 300: 296: 292: 273: 270: 261: 256: 253: 252: 249: 246: 243: 240: 237: 234: 232: 229: 228: 224: 220: 216: 212: 208: 204: 203:Google Chrome 200: 194: 191: 188: 185: 182: 179: 178: 175: 171: 168: 166: 163: 161: 158: 156: 153: 151: 148: 147: 136: 126: 125:for desktop. 124: 120: 116: 112: 108: 107:Google Chrome 103: 102:is optional. 101: 97: 93: 89: 85: 81: 76: 74: 70: 66: 62: 58: 54: 50: 46: 42: 38: 34: 30: 21: 2774: 2396:Browser APIs 2337:Web resource 2017:. Retrieved 2015:. 1 May 2019 2012: 1988:. Retrieved 1984: 1975: 1963:. Retrieved 1959: 1950: 1939:. Retrieved 1935: 1926: 1915:. Retrieved 1905: 1894:. Retrieved 1890: 1881: 1870:. Retrieved 1866: 1856: 1844:. Retrieved 1840: 1831: 1822: 1813: 1804: 1795: 1787:MDN Web Docs 1786: 1777: 1766:. Retrieved 1762: 1753: 1742:. Retrieved 1738: 1729: 1718:. Retrieved 1714: 1705: 1693:. Retrieved 1689: 1679: 1667:. Retrieved 1663: 1653: 1642:. Retrieved 1640:. 2021-02-22 1637: 1628: 1616:. Retrieved 1612: 1602: 1575:. Retrieved 1571: 1562: 1550:. Retrieved 1546: 1537: 1526:. Retrieved 1522: 1513: 1501:. Retrieved 1491: 1479:. Retrieved 1475: 1465: 1451: 1440:. Retrieved 1438:. 2018-04-07 1435: 1426: 1415:. Retrieved 1411: 1406:MSEdgeTeam. 1401: 1379: 1373: 1363: 1353:13 September 1351:. Retrieved 1347: 1337: 1326:. Retrieved 1322: 1313: 1301:. Retrieved 1297: 1287: 1275:. Retrieved 1271: 1244:. Retrieved 1234: 1223:. Retrieved 1218: 1209: 1198:. Retrieved 1194: 1184: 1173:. Retrieved 1171:. 2016-09-27 1168: 1159: 1147:. Retrieved 1143:A List Apart 1141: 1131: 1119:. Retrieved 1114: 1105: 1093:. Retrieved 1089: 1067: 1057: 1046:. Retrieved 1042: 1032: 1021:. Retrieved 1017: 1007: 996:. Retrieved 994:. 2021-10-07 991: 982: 970:. Retrieved 965: 942:. Retrieved 939:Fast Company 938: 905: 893:. Retrieved 889: 880: 869:. Retrieved 865: 833: 826: 815:. Retrieved 813:. 2024-01-18 810: 801: 774: 761: 749: 734: 719: 716:Data storage 688: 670: 662: 627: 618: 615:Technologies 594: 574: 512: 491: 481: 467: 456: 416: 404: 377: 358: 330: 315: 288: 285:Predecessors 111:Apple Safari 104: 77: 67:, including 36: 32: 28: 26: 2775:Progressive 2770:Single-page 2578:WebAssembly 2558:Geolocation 2515:Web storage 2421:C NPRuntime 2409:LiveConnect 2387:Client-side 2333:Web service 2262:mod_include 2217:Python ASGI 2212:Python WSGI 2162:Server APIs 2083:Server-side 1912:"Home Nest" 1695:10 February 1669:10 February 1618:11 February 1503:October 18, 1323:caniuse.com 731:Web storage 725:Web Storage 691:precompiled 685:WebAssembly 679:WebAssembly 667:iOS support 560:home screen 435:Google Play 425:known as a 337:open-source 289:At Apple's 121:but not by 100:Google Play 92:home screen 86:known as a 61:WebAssembly 2543:DOM events 2520:Web worker 2505:WebSockets 2366:comparison 2302:mod_python 2282:mod_parrot 2115:Encryption 1941:2024-05-06 1917:2024-05-06 1896:2024-05-06 1872:2024-05-06 1768:2017-04-24 1744:2017-04-24 1720:2017-04-24 1644:2021-05-16 1577:2021-05-19 1528:2021-05-19 1442:2021-05-16 1417:2021-05-16 1328:2021-05-16 1225:2021-03-17 1219:TechCrunch 1200:2021-03-17 1175:2022-05-05 1048:2023-06-14 1023:2023-06-14 998:2021-10-11 944:2021-01-27 895:27 January 871:2020-09-25 817:2024-05-06 793:References 764:web worker 620:manifest. 548:minimal-ui 544:fullscreen 540:standalone 528:short_name 449:indexing. 333:Firefox OS 295:Steve Jobs 57:JavaScript 2701:Scripting 2563:IndexedDB 2414:XPConnect 2373:Scripting 2297:mod_proxy 2242:container 2232:Perl PSGI 2222:Ruby Rack 2195:container 2152:WebSocket 2092:Protocols 1990:14 August 1965:14 August 1846:14 August 1370:"Comment" 712:in 2021. 601:Pinterest 589:Starbucks 575:In 2017, 556:app store 532:start_url 509:web cache 472:" of the 311:App Store 293:in 2007, 271:Partial 262:Partial 201:Includes 2797:Category 2726:Web page 2583:WebAuthn 2458:Web APIs 2351:Open API 2312:mod_ruby 2307:mod_wsgi 2287:mod_perl 2277:mod_mono 2272:mod_lisp 2202:CLI OWIN 1638:SimiCart 1552:June 15, 1387:cite web 1246:June 15, 972:13 March 780:See also 638:metadata 624:Manifest 605:Flipkart 520:manifest 396:ChromeOS 244:Partial 181:Chromium 144:Comment 141:Support 138:Browser 23:PWA logo 2736:Dynamic 2696:Web IDL 2642:GraphQL 2608:Khronos 2438:ActiveX 2426:C PPAPI 2404:C NPAPI 2356:Webhook 2292:mod_php 2237:Portlet 2185:COM ASP 2180:C ISAPI 2175:C ASAPI 2170:C NSAPI 1572:web.dev 1547:web.dev 1523:web.dev 1195:PCWorld 1149:May 25, 1115:9to5Mac 890:CanIUse 710:SIGPLAN 609:Lancôme 581:Android 577:Twitter 550:), and 536:display 423:website 419:webpage 384:Windows 280:History 231:Firefox 219:Vivaldi 183:-based 165:Android 150:Windows 123:Firefox 84:website 80:webpage 69:desktop 65:browser 2731:Static 2714:Topics 2691:Mashup 2666:Topics 2653:WebUSB 2630:Others 2593:WebRTC 2588:WebGPU 2480:Canvas 2467:WHATWG 2326:Topics 2267:mod_jk 2120:WebDAV 2019:23 May 1805:Medium 1690:Forbes 1481:23 May 1375:Reddit 1303:23 May 1277:23 May 1121:22 May 1095:23 May 1043:WebKit 1018:WebKit 841:  597:Forbes 566:, etc. 534:, and 513:before 413:Stores 398:, and 386:) and 307:Safari 299:iPhone 255:Safari 223:others 221:, and 174:iPadOS 172:& 117:, and 59:, and 35:), or 2681:DHTML 2637:Gears 2621:WebGL 2616:WebCL 2598:WebXR 2500:Video 2475:Audio 1891:InfoQ 1090:iMore 1068:Apple 705:from 552:icons 502:HTTPS 478:cache 470:shell 441:, or 400:Linux 392:macOS 349:KaiOS 344:Gecko 215:Opera 211:Brave 160:Linux 155:macOS 2765:Rich 2748:REST 2679:vs. 2675:and 2673:Ajax 2553:File 2485:CORS 2448:XBAP 2431:NaCl 2344:vs. 2335:vs. 2147:WSRP 2137:FCGI 2132:SCGI 2100:HTTP 2021:2019 1992:2018 1967:2018 1848:2018 1697:2023 1671:2023 1620:2023 1613:CNET 1593:W3C 1554:2015 1505:2016 1483:2019 1393:link 1355:2019 1305:2019 1279:2019 1248:2015 1151:2010 1123:2019 1097:2019 974:2021 897:2021 839:ISBN 752:JSON 634:JSON 583:and 524:name 447:Bing 382:(on 367:and 241:No 238:No 235:No 195:Yes 192:Yes 189:Yes 186:Yes 71:and 49:HTML 2573:SVG 2568:MSE 2548:EME 2535:W3C 2495:SSE 2490:DOM 2443:BHO 2346:ROA 2342:WOA 2142:AJP 2127:CGI 1985:MDN 1960:MDN 1841:MDN 1298:DEG 707:ACM 672:iOS 630:W3C 585:iOS 546:or 526:or 498:TLS 421:or 402:). 247:No 170:iOS 98:or 82:or 53:CSS 45:web 33:PWA 2799:: 2110:v3 2105:v2 2011:. 2000:^ 1983:. 1958:. 1934:. 1889:. 1865:. 1839:. 1821:. 1803:. 1785:. 1761:. 1737:. 1713:. 1688:. 1662:. 1636:. 1611:. 1586:^ 1570:. 1545:. 1521:. 1474:. 1434:. 1410:. 1389:}} 1385:{{ 1378:. 1372:. 1346:. 1321:. 1296:. 1270:. 1256:^ 1217:. 1193:. 1167:. 1140:. 1113:. 1088:. 1076:^ 1066:. 1041:. 1016:. 990:. 964:. 953:^ 937:. 919:^ 888:. 864:. 853:^ 809:. 542:, 530:, 437:, 433:, 394:, 324:. 268:— 265:— 259:— 225:. 217:, 213:, 209:, 205:, 198:— 113:, 109:, 75:. 55:, 51:, 27:A 2067:e 2060:t 2053:v 2023:. 1994:. 1969:. 1944:. 1920:. 1899:. 1875:. 1850:. 1825:. 1789:. 1771:. 1747:. 1723:. 1699:. 1673:. 1647:. 1622:. 1580:. 1556:. 1531:. 1507:. 1485:. 1459:. 1445:. 1420:. 1395:) 1357:. 1331:. 1307:. 1281:. 1250:. 1228:. 1203:. 1178:. 1153:. 1125:. 1099:. 1070:. 1051:. 1026:. 1001:. 976:. 947:. 899:. 874:. 847:. 820:. 695:C 31:(

Index


application software
web
HTML
CSS
JavaScript
WebAssembly
browser
desktop
mobile devices
webpage
website
web application
home screen
Apple App Store
Google Play
Google Chrome
Apple Safari
Firefox for Android
Microsoft Edge
Firefox
Windows
macOS
Linux
Android
iOS
iPadOS
Chromium
Google Chrome
Microsoft Edge

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.