Building Progressive Web Apps: Bringing the Power of Native to the Browser 1st Edition
Tal Ater (Author) Find all the books, read about the author, and more. See search results for this author |



Use the Amazon App to scan ISBNs and compare prices.

Move over native apps. New progressive web apps have capabilities that will soon make you obsolete. With this hands-on guide, web developers and business execs will learn how—and why—to develop web apps that take advantage of features that have so far been exclusive to native apps. Features that include fast load times, push notifications, offline access, homescreen shortcuts, and an entirely app-like experience.
By leveraging the latest browser APIs, progressive web apps combine all of the benefits of native apps, while avoiding their issues. Throughout the book, author Tal Ater shows you how to improve a simple website for the fictional Gotham Imperial Hotel into a modern progressive web app. Plus:
- Understand how service workers work, and use them to create sites that launch in an instant, regardless of the user’s internet connection
- Create full-screen web apps that launch from the phone's homescreen just like native apps
- Re-engage users with push notifications, even days after they have left your site
- Embrace offline-first and build web apps that gracefully handle loss of connectivity
- Explore new UX opportunities and challenges presented by progressive web apps
Frequently bought together
- +
Customers who viewed this item also viewed
From the Publisher

From the Preface
Progressive web apps are an exciting new form of modern web apps. These apps leverage the latest web capabilities to deliver an experience that combines the unique features of native mobile apps with the advantages of the web.
This book will help you gain a thorough, practical understanding of modern progressive web app development through hands-on experience.
You will learn how to build web apps that take advantage of features that have so far been the exclusive domain of native apps. You will be able to reach out to your users with push notifications, grab prime real estate on the user’s homescreen, speed up your site significantly, and provide your users with a fully functional app, regardless of their connection.
The book incorporates a real-world, hands-on approach to learning by taking an existing website and chapter by chapter transforming it into a modern progressive web app.
Who This Book Is For
This book is first and foremost intended for developers. If you are looking to leverage your existing web development skills and learn how to build modern progressive web apps, this is the book for you.
The book assumes you have at least a basic understanding of web development using HTML and JavaScript. It does not assume any familiarity with relatively newer additions to JavaScript such as ECMAScript 2015, promises, or ECMAScript 2017’s async functions. If you are already familiar with these modern language constructs, you should be able to skip (or quickly skim) the notes that explain them.
For people in non-technical roles, this book can help provide a familiarity and a general understanding of the capabilities of modern progressive web apps. Many chapters include case studies collected through interviews conducted with teams behind some of the world’s most influential sites, including Twitter, The Washington Post, Housing.com, and Lyft. Whether you are in a managerial position, a designer, a product manager, or any other position that involves making decisions about native or web apps, an understanding of what is possible today will help you be more effective at your job.
What This Book Covers
As you read through this book, you will take a simple website for the fictional Gotham Imperial Hotel and enhance it with service workers so that it loads almost instantaneously (even on the slowest connections), making sure all of its features are available even when your users are completely offline (including seeing their reservations and even making new ones). You will learn how to let users add an icon to launch your progressive web app from their phone’s homescreen. Finally, to complete the native app-like experience, you will add push notifications allowing you to reach out and reengage your users even after they have left your site.
This book also explores some of the important considerations when developing progressive web apps. We will focus on gaining a practical understanding of these concepts in a way that will help you be a more effective developer. Among other things, we will look at helpful developer tools, security considerations, and understanding the service worker lifecycle.
Editorial Reviews
About the Author
Tal Ater is a developer, consultant and entrepreneur with over 20 years of experience. His experience includes both client, server and product development, and managing R&D and product departments. He is very passionate and involved with the open source community. His open source contributions, including his popular Service Worker and Speech Recognition libraries, are used by millions of people every day. He has written and spoken extensively on web development, product development, security and open source. His work and research has been extensively featured in the media, including Forbes, The New York Times and the BBC, making his mother very proud.
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Product details
- Publisher : O'Reilly Media; 1st edition (September 22, 2017)
- Language : English
- Paperback : 288 pages
- ISBN-10 : 1491961651
- ISBN-13 : 978-1491961650
- Item Weight : 1.1 pounds
- Dimensions : 7 x 0.5 x 9 inches
- Best Sellers Rank: #1,067,701 in Books (See Top 100 in Books)
- #122 in Internet Web Browsers
- #413 in Web Services
- #516 in JavaScript Programming (Books)
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read author blogs and more
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Well worked "gotham_imperial_hotel" example, progressively embellished with each chapter. The gotham example can be gotten from github. (I needed to use Node Version Manager (nvm) to switch to the latest nodejs and then it built/ran with no problems).
Even with 5 stars, it will age quickly. Recommend adding these for next version:
1. A dedicated chapter to Google's Workbox library. Probably enough there for another 2-3 chapters, actually.
2. Add a brief reference to these arcane Promise libraries: Q, When, WinJS, RSVP.js. Most of these will fall as roadkill, but should at least be mentioned as alternative Promise libraries.
Book contains 12 chapters, seems to stop at ES5 (ECMASCript 2015). For me it is no problem, all of our users have been told to use the latest version of Chrome and Firefox (automatic updates enabled), so we have an up to date user base. We can in theory , go to ES6, but in practice it's a huge task upgrading vast amounts of ancient Javascript.
Chapter 1. Introducing Progressive Web Apps.
Chapter 2. Your First Service Worker.
Chapter 3. The CacheStorage API.
Chapter 4. Service Worker Lifecycle and Cache Management.
Chapter 5. Embracing Offline-First
Chapter 6. Storing Data Locally With IndexedDB. (Loved this chapter! I wanted more details but this was great).
Chapter 7. Ensuring offline Functionality with Background Sync.
Chapter 8. Service Worker To Page Communication with Post Messages.
Chapter 9. Grabbing Homescreen Real Estate with Installable Web Apps.
Chapter 10. Reach Out with Push Notifications.
Chapter 11. Progressive Webb App UX.
Chapter 12. What's Next For PWAs.
Useful appendices too:
A. Service Workers: A great Opportunity to Adopt ES2015.
B. Full-page Interstitials.
C. CORS Versus NO-CORS.
-jeff
Each of the topics covered is approached from 2 different perspectives, so you can truly understand how you would implement those new web features, no matter what project you work on.
As an added bonus, the book has a bunch of short case studies and examples from interviews done with real teams working on real progressive web applications.
While I still find PWAs to be a "big" topic, it no longer feels overwhelming, and I have Tal to thank for that.
His book covers web manifests, service workers, caching, push messages, notifications, background sync, and more. He even spends time discussing IndexedDB, which isn't necessarily a new technology (I've got a book the topic myself), but has gained new importance as PWAs have evolved.
I also appreciate the attention he spent to explaining why you would do certain things. For example, Tal goes into detail about the various caching strategies and why you would use them in your app. So you get more than just a random set of code samples. You get logical reasons for why you could actually use the code he shared. This dovetails well into the UX section at the end of the book. I love that it isn't just "how to do X" but rather "here are things to think about if you want to do X".
So if it isn't obvious, I definitely recommend the book. In fact, this is only the second technical book I've read that I plan on purchasing a physical copy so I can keep it by my desk for easy reference.
Top reviews from other countries


Tal Ater wrote a easy to read (and follow) guide on how to make Progressive Web Applications (PWA-s). It follows a clear line from a "normal" web application to a PWA trough two demo applications. With code snippets you have a insight on how things are done.
No matter if you are a pro in web dev or just starting at it. It fits the needs of experienced devs and beginners. Of course as pro you can skip some parts that are for beginners but get also deep insights and details. PWA-s are no new technology.
They are just a guideline how to use existing technologies and API-s to make a better user experience and a more "native like" web application. I especially like the detailed explanations on Service Workers and Background Sync. Even they are not supported in every browser there are signs and facts that prove that they will be, so prepare yourself for this future. As Jon Snow would say "Service worker is coming" ;)
I'm working for more than a year on PWA-s and still found in the book new information's and tips. Even the parts for beginners are interesting to refresh the basic knowledge. I never hat the felling that it gets boring with basic stuff. That happens me often with other books. We also get a great sneak pike in new API-s planed for Browsers. I hope that Tal Ater makes a new book on those when they get released.
When I started working with PWA-s I told myself "never buy a book on this topic". I thought it would be not up to date. New things are coming so fast in the web development world that no book could keep up with it. This one proved me that it is possible. The reason is that it explains in detail Browser standards and API-s that should not change a lot in the future or at least have breaking changes.
I can't enough recommend this book for everyone who is developing for the web.


