Abstract
Progressive Web Apps (PWAs) allow for web applications to be developed in an offline-first approach. While Web apps traditionally did not properly function without an Internet connection, PWAs enable them to be downloaded, installed and used offline on various systems, including mobile devices and personal computers. We present an introduction to the state-of-art in research and practice. Based on this, we discuss various underlying concepts and technologies. Then, we scrutinize and compare PWAs against cross-platform app development approaches on both technical and overarching aspects. A list of suggestions for future research is also presented. We urge academia to keep up with the latest trends within the field of mobile and web development, as new concepts and approaches such as Progressive Web Apps now make for interesting research topics with tangible real-world effects.
This paper greatly extends the short paper [1] presented at WEBIST 2017. It has been updated to reflect the latest developments, includes new content based on additional work as well as on the discussions at the conference, and has been amended with a comprehensive discussion. Please note that verbatim content from the short paper is not explicitly highlighted but for figures and tables already included there.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Biørn-Hansen, A., Majchrzak, T.A., Grønli, T.M.: Progressive web apps: the possible web-native unifier for mobile development. In: Proceedings of the 13th International Conference on Web Information Systems and Technologies (WEBIST), pp. 344–351. SciTePress (2017)
Heitkötter, H., Majchrzak, T.A., Kuchen, H.: Cross-Platform Model-Driven Development of Mobile Applications with MD\({}^{\text{2}}\). In: Proceedings of 28th ACM SAC, pp. 526–533. ACM (2013)
Perchat, J., Desertot, M., Lecomte, S.: Component based framework to create mobile cross-platform applications. In: Procedia Computer Science, vol. 19, pp. 1004–1011. ScienceDirect (2013). http://www.sciencedirect.com/science/article/pii/S1877050913007485
Majchrzak, T.A., Heitkötter, H.: Status quo and best practices of app development in regional companies. In: Krempels, K.-H., Stocker, A. (eds.) WEBIST 2013. LNBIP, vol. 189, pp. 189–206. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44300-2_12
Malavolta, I., Ruberto, S., Soru, T., Terragni, V.: Hybrid mobile apps in the Google play store: an exploratory investigation. In: Proceedings 2nd ACM International Conference on Mobile Software Engineering and Systems, MOBILESoft 2015, pp. 56–59. IEEE Press (2015)
Angulo, E., Ferre, X.: A case study on Cross-Platform development frameworks for mobile applications and UX. In: Proceedings of the XV International Conference on Human Computer Interaction, p. 27. ACM (2014)
Heitkötter, H., Hanschke, S., Majchrzak, T.A.: Evaluating cross-platform development approaches for mobile applications. In: Cordeiro, J., Krempels, K.-H. (eds.) WEBIST 2012. LNBIP, vol. 140, pp. 120–138. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36608-6_8
Majchrzak, T.A., Biørn-Hansen, A., Grønli, T.M.: Comprehensive analysis of innovative cross-platform app development frameworks. In: Proceedings of 49th HICSS. IEEE Computer Society (2017)
Rahul, R., Tolety, S.B.: A study on approaches to build cross-platform mobile applications and criteria to select appropriate approach. In: Annual IEEE India Conference, pp. 625–629. IEEE (2012). https://doi.org/10.1109/INDCON.2012.6420693
El-Kassas, W.S., Abdullah, B.A., Yousef, A.H., Wahba, A.M.: Taxonomy of Cross-Platform mobile applications development approaches. Ain Shams Eng. J. 8, 163–190 (2017)
Rieger, C., Majchrzak, T.A.: Weighted evaluation framework for cross-platform app development approaches. In: Wrycza, S. (ed.) SIGSAND/PLAIS 2016. LNBIP, vol. 264, pp. 18–39. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46642-2_2
Du, F.Q.: Under the Hood: Rebuilding Facebook for Android (2012). https://www.facebook.com/notes/facebook-engineering/under-the-hood-rebuilding-facebook-for-android/10151189598933920/. Accessed 13 Jan 2017
Lee, C.: Zuckerberg talks about Facebook App mistakes, rumored smartphone and more (2012). http://www.idownloadblog.com/2012/09/11/zuckerberg-app-phone-more/. Accessed 17 Apr 2016
Latif, M., Lakhrissi, Y., Nfaoui, E.H., Es-Sbai, N.: Cross platform approach for mobile application development: A survey. In: 2016 International Confere on Information Technology for Organizations Development (IT4OD), pp. 1–5. IEEE (2016)
Ciman, M., Gaggi, O.: An empirical analysis of energy consumption of cross-platform frameworks for mobile development. Pervasive Mobile Comput. 39, 214–230 (2016). https://doi.org/10.1016/j.pmcj.2016.10.004
Russel, A., Berriman, F.: Progressive web apps: escaping tabs without losing our soul (2015). https://goo.gl/e6pZHF
Osmani, A., Cohen, M.: Offline storage for progressive web apps (2017). https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa. Accessed 3 July 2017
Roy-Chowdhury, R.: The mobile web: state of the union (2017). https://www.youtube.com/watch?v=_ssDaecATCM
Malavolta, I., Procaccianti, G., Noorland, P., Vukmirović, P.: Assessing the impact of service workers on the energy efficiency of progressive web apps. In: Proceedings of the 4th International Conference on Mobile Software Engineering and Systems, MOBILESoft 2017, Piscataway, NJ, USA, pp. 35–45. IEEE Press (2017). http://dl.acm.org/citation.cfm?id=3104093
Gudla, S.K., Sahoo, J.K., Singh, A., Bose, J., Ahamed, N.: Framework to improve the web application launch time. In: Proceedings of 2016 IEEE International Conference on Mobile Services (MS), pp. 73–78. IEEE Press (2016)
Fransson, R., Driaguine, A.: Comparing progressive web applications with native android applications: an evaluation of performance when it comes to response time. Ph.D. thesis, Linnaeus University (2017). http://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1105475&dswid=-7607
Shafirov, M.: Kotlin on Android. Now official (2017). https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/. Accessed 9 June 2017
Majchrzak, T.A., Ernsting, J., Kuchen, H.: Achieving business practicability of model-driven cross-platform apps. Open J. Inf. Syst. (OJIS) 2, 3–14 (2015)
Android Developers: (Implementing descendant navigation). https://developer.android.com/training/implementing-navigation/descendant.html. Accessed 12 July 2017
Ater, T.: Building Progressive Web Apps: Bringing the Power of Native to the Browser. O’Reilly (2017)
Hume, D.A.: Progressive Web Apps. Manning (2017). https://www.manning.com/books/progressive-web-apps
Edwards, A.R.: The building blocks of progressive web apps - smashing magazine (2016). https://www.smashingmagazine.com/2016/09/the-building-blocks-of-progressive-web-apps/
Mahemoff, M.: Progressive web apps have leapfrogged the native install mode \(\ldots \) but challenges remain (2016). https://goo.gl/EbnF0N
Rinaldi, B., Holland, B., Looper, J., Motto, T., VanToll, T.J.: Are progressive web apps the future? (2016). http://developer.telerik.com/featured/are-progressive-web-apps-future/
Xanthopoulos, S., Xinogalos, S.: A comparative analysis of cross-platform development approaches for mobile applications. In: Proceedings of 6th Balkan Conference in Informatics, BCI 2013, pp. 213–220. ACM (2013)
Dalmasso, I., Datta, S.K., Bonnet, C., Nikaein, N.: Survey, comparison and evaluation of cross platform mobile application development tools. In: Proceedings of 9th IWCMC, pp. 323–328 (2013)
Palmieri, M., Singh, I., Cicchetti, A.: Comparison of cross-platform mobile development tools. In: Proceedings of 16th International Conference on Intelligence in Next Generation Networks, pp. 179–186. IEEE (2012)
Gaouar, L., Benamar, A., Bendimerad, F.T.: Desirable requirements of cross platform mobile development tools. Electron. Dev. 5, 14–22 (2016)
Mercado, I.T., Munaiah, N., Meneely, A.: The impact of cross-platform development approaches for mobile applications from the user’s perspective. In: Proceedings of International Workshop on App Market Analytics, WAMA 2016, pp. 43–49. ACM (2016)
Malavolta, I., Ruberto, S., Soru, T., Terragni, V.: End users’ perception of hybrid mobile apps in the Google play store. In: 2015 IEEE International Conference on Mobile Services, pp. 25–32. IEEE (2015)
Rieger, C., Majchrzak, T.A.: Conquering the mobile device jungle: towards a taxonomy for app-enabled devices. In: Proceedings of the 13th International Conference on Web Information Systems and Technologies (WEBIST), pp. 332–339. SciTePress (2017)
Service Workers 1 (2017). https://developers.google.com/web/fundamentals/getting-started/primers/service-workers. Accessed 29 June 2017
Gaunt, M.: Service workers: an introduction (2016)
Archibald, J.: Instant loading: building offline-first progressive web apps (2016). https://www.youtube.com/watch?v=cmGr0RszHc8
Osmani, A., Gaunt, M.: Instant loading web apps with an application shell architecture (2017).https://developers.google.com/web/updates/2015/11/app-shell
Guant, M., Kinlan, P.: The web app manifest (2016). https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/. Accessed 8 Dec 2016
LePage, P.: Your first progressive web app (2017). https://developers.google.com/web/fundamentals/getting-started/codelabs/your-first-pwapp/. Accessed 8 June 2017
Cazañas, A., Parra, E.: Strategies for mobile web design. In: INCISCOS 2016 (2017). ingenieria.ute.edu.ec
Nebeling, M., Norrie, M.C.: Responsive design and development: methods, technologies and current issues. In: Daniel, F., Dolog, P., Li, Q. (eds.) ICWE 2013. LNCS, vol. 7977, pp. 510–513. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39200-9_47
LePage, P.: Responsive web design basics (2017). https://developers.google.com/web/fundamentals/design-and-ui/responsive/. Accessed 4 July 2017
CanIUse: Can I use push API (2017). http://caniuse.com/#feat=push-api. Accessed 29 June 2017
Birch, S., Russell, A.: Progressive web apps: great experiences everywhere (2017). https://www.youtube.com/watch?v=m-sCdS0sQO8
Google Developers: Lighthouse (2017). https://developers.google.com/web/tools/lighthouse/. Accessed: 2017-6-28
Smeets, R., Aerts, K.: Trends in web based cross platform technologies. Int. J. Comput. Sci. Mobile Comput. 5, 190–199 (2016)
Osmani, A.: Production progressive web apps with JavaScript frameworks (2017). https://www.youtube.com/watch?v=aCMbSyngXB4
Joreteg, H.: Installing web apps on phones (for real) (2016). https://joreteg.com/blog/installing-web-apps-for-real
Rossi, J.: The progress of web apps - microsoft edge dev blog (2016). https://blogs.windows.com/msedgedev/2016/07/08/the-progress-of-web-apps/
Push API (2017). https://www.w3.org/TR/push-api/. Accessed 29 June 2017
Pedersen, M.: Progressive web apps: Bridging the gap between web and mobile (2016). https://www.sitepoint.com/progressive-web-apps-bridging-the-gap-between-web-and-mobile/
npm-stat: npm-stat: electron (2017). https://npm-stat.com/charts.html?package=electron&from=2015-11-01&to=2017-06-28. Accessed 28 June 2017
Electron: (Electron). https://electron.atom.io/. Accessed 28 June 2017
Raible, M.: The ultimate guide to progressive web applications (2017). http://scotch.io/tutorials/the-ultimate-guide-to-progressive-web-applications. Accessed 28 June 2017
Ionic: ionic2-app-base (2017). https://github.com/ionic-team/ionic2-app-base/blob/master/config.xml#L30
Malavolta, I.: Beyond native apps: web technologies to the rescue! (keynote). ACM (2016). http://doi.acm.org/10.1145/3001854.3001863
Puder, A., Tillmann, N., Moskal, M.: Exposing native device APIs to web apps. In: Proceedings of 1st International Conference on Mobile Software Engineering and Systems, pp. 18–26. ACM (2014). https://doi.org/10.1145/2593902.2593908
Heitkötter, H., Majchrzak, T.A.: Cross-platform development of business apps with MD2. In: vom Brocke, J., Hekkala, R., Ram, S., Rossi, M. (eds.) DESRIST 2013. LNCS, vol. 7939, pp. 405–411. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38827-9_29
Postfu: Is it actually possible to earn money from mobile game ads? (2017). https://np.reddit.com/r/gamedev/comments/6575nr/is_it_actually_possible_to_earn_money_from_mobile/dg8mmia/?context=10000. Accessed 28 June 2017
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Biørn-Hansen, A., Majchrzak, T.A., Grønli, TM. (2018). Progressive Web Apps for the Unified Development of Mobile Applications. In: Majchrzak, T., Traverso, P., Krempels, KH., Monfort, V. (eds) Web Information Systems and Technologies. WEBIST 2017. Lecture Notes in Business Information Processing, vol 322. Springer, Cham. https://doi.org/10.1007/978-3-319-93527-0_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-93527-0_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-93526-3
Online ISBN: 978-3-319-93527-0
eBook Packages: Computer ScienceComputer Science (R0)