Progressive web app development
A progressive web app is a web application that can be installed from the browser, opens in its own window and keeps working on a poor connection. WavX builds PWAs as custom web applications in React and Next.js, and tells you before quoting which features Android, iPhone and desktop browsers each support. A lean build has a planning range of ₹3,82,500 to ₹5,62,500.
What WavX builds
WavX builds progressive web apps (PWAs) as custom web applications: a React or Next.js front end, a Node.js or Python back end, and PostgreSQL or MongoDB for the data. The PWA part is a defined set of additions on top of that application:
- a web app manifest, so that a browser can install the app under your name and icon
- a service worker with a caching plan written screen by screen, not one rule for the whole site
- an offline state for every screen that needs the network, so that the user sees a clear message instead of a browser error page
- an install flow for each platform, including written instructions for iPhone, where the browser shows no prompt
- push notifications where the platform supports them
- an update path, so that a new release reaches installed copies without anyone reinstalling
The result is one codebase, served from one URL, for phones, tablets and desktops. The PWA guide explains the idea for a non-technical reader.
What works on which device
Browser support decides what a PWA can promise, so this is where a project should start. The table shows the position as of October 2026, taken from the browser makers' own documentation. The sources are listed at the foot of this page.
| Capability | Android, in Chrome | iPhone and iPad | Desktop Chrome and Edge |
|---|---|---|---|
| Install | Yes. On phones with Google Mobile Services, Chrome installs the PWA as a WebAPK with its own entry in the app launcher and system settings | Yes, by hand: Share, then Add to Home Screen. Since iOS 26, any site added this way opens as a web app by default | Yes. An install icon appears in the address bar |
| Install prompt opened by your own button | Yes | No. iOS has no install prompt, and the beforeinstallprompt event is not supported there |
Yes |
| Pages that open offline, through a service worker and cache | Yes | Yes | Yes |
| Push notifications | Yes | Only once the app is on the Home Screen (iOS 16.4 or later). The permission request must follow a tap | Yes |
| Background Sync, which sends queued changes when the connection returns | Yes | No. Safari does not support the Background Synchronization API | Yes |
Three points follow from the table.
Most Indian users get the fuller column. StatCounter puts Android at 93.89% of mobile operating system share in India for September 2026, and iOS at 6.05%.
The iPhone column still needs a decision. Without Background Sync, an order or a form saved offline on an iPhone cannot be sent while the app is closed. It has to go when the user next opens the app with a connection, and that path is built and tested separately. The detail is in what works in a PWA on iOS.
Not every browser installs. MDN records that Firefox on desktop does not install PWAs from a manifest, and that on Android only Chrome (on devices with Google Mobile Services) and Samsung Internet (on Samsung devices) install a WebAPK; other browsers add a home-screen shortcut that opens the site in the browser. web.dev notes that many in-app browsers, such as those inside Instagram, Facebook and Gmail, cannot install a PWA at all. A link shared on social media therefore needs an "open in your browser" hint.
What is in a build
| Part | What WavX does | What you decide |
|---|---|---|
| Manifest | Name, icons at 192 and 512 pixels, start URL, display mode and theme colour. These are the members Chromium-based browsers require before they offer installation | The app's name and icon, and whether it opens without browser controls |
| Caching plan | A strategy for each route: cached first for the app shell and static files, network first for prices, stock and anything that must be current | Which screens must open with no connection |
| Offline data | Data the user needs offline is stored on the device. Changes made offline are queued and sent on reconnection, through Background Sync where the browser has it and a retry on next open where it does not | What a user may do offline, and what must wait |
| Install flow | A custom install button on Chrome and Edge, and a short how-to for iPhone | Where in the journey to ask |
| Push | The permission request tied to a tap, a service worker that displays each message, and the server side that sends them. Apple's documentation says Safari revokes the permission if a push arrives and no notification is shown | What is worth a notification |
| Updates | A new service worker installs in the background and takes over once the old one is no longer in use. Where a release cannot wait, the app asks the user to reload | How urgent your releases are |
| Device testing | Android in Chrome, iPhone in Safari, desktop Chrome and Edge, each with the network switched off | Which devices your users hold |
The caching plan is where most of the judgement goes. A PWA that caches too much shows yesterday's prices; one that caches too little is a website with an icon. The patterns are set out in service workers and caching strategies.
How the work runs
- Fit check. Before quoting, WavX lists the features you need against the table above and marks which ones a PWA cannot deliver on iPhone or in the browsers your users have. If the list fails, the recommendation is an app, not a PWA.
- Offline map. Screen by screen: what must load with no connection, what may be a little stale, and what must never be stale.
- Build. The web application first, then the manifest, the service worker and the install flow. A PWA must be served over HTTPS, so hosting and the domain are settled early.
- Device testing. Installation, offline behaviour and updates are checked in each browser's own developer tools. In Chrome, the Application panel shows the manifest, the registered service workers and the cache contents.
- Launch. The app goes live on your domain, in your hosting account. You own the code.
Work is quoted after a free consultation, as fixed price, time and materials, or a hybrid.
Planning ranges
A PWA is a web application, so WavX prices it from the software figures in its cost model, the ones the software cost estimator uses. There is no separate PWA rate card.
Assumptions for every row: the custom web application base of ₹4,50,000, small scale (×1.0) unless stated, standard design (×1.0), and a range of the subtotal ×0.85 to ×1.25.
| Example | Model inputs | Subtotal | Planning range | Timeline band |
|---|---|---|---|---|
| Lean PWA: a catalogue or content app with no accounts | Base only | ₹4,50,000 | ₹3,82,500 to ₹5,62,500 | 6–10 weeks |
| With accounts and notifications | Base, auth and roles (₹60,000), real-time and notifications (₹70,000) | ₹5,80,000 | ₹4,93,000 to ₹7,25,000 | 6–10 weeks |
| Ordering or booking PWA | Base, auth and roles (₹60,000), payments (₹90,000), admin panel (₹90,000), real-time and notifications (₹70,000) | ₹7,60,000 | ₹6,46,000 to ₹9,50,000 | 10–16 weeks |
| The same, at growing scale (×1.3) | As above, ×1.3 | ₹9,88,000 | ₹8,39,800 to ₹12,35,000 | 10–16 weeks |
These are planning ranges, not quotes. To reproduce a row in the estimator, set design to Standard; the estimator opens on Custom UI/UX, which multiplies the subtotal by 1.25. The timeline column is the cost model's band for a subtotal of that size, and the estimator displays its own band for the same selection.
Two kinds of work have no line in the model and are quoted after scoping: converting an existing website, and offline data handling that goes beyond cached pages, such as queued orders with conflict rules.
For comparison, the app cost calculator gives ₹5,48,250 to ₹8,06,250 for a medium cross-platform app with accounts, payments, push and an admin panel, and ₹8,77,200 to ₹12,90,000 for the same app built as two native apps. On WavX's own figures, then, a PWA is not cheaper than a cross-platform app. It is cheaper than two native apps, and it is one build where the alternative is often a website plus an app. The PWA cost guide works through the comparison.
When a PWA is the wrong build
- The app store is your main channel. If customers find products like yours by searching the Play Store or the App Store, build for the stores. A PWA can be packaged for them, but that is a second route with conditions each store sets.
- The product depends on background work on iPhone. Sync while the app is closed, or notifications to users who have not installed the app, are not available there as of October 2026.
- A plain website would do. A brochure site or a blog that nobody opens daily gains little from installation or offline support. Build the website and spend the difference elsewhere.
- The tool depends on attached hardware. An internal tool on company-issued Android phones is a good PWA. The same tool tied to a barcode scanner or other attached hardware may not be. Check what the browser on that device supports before committing.
The full comparison is in PWA vs native app. It is the right post to read before choosing, and WavX will say at the fit check if the answer is not a PWA.
PWA development is one part of web application development at WavX.
Frequently asked questions
Is a PWA cheaper than a native app?
It is cheaper than building two native apps, and cheaper than a web application plus a separate companion app. On our own cost model it is not cheaper than a single cross-platform app with the same features. The PWA cost guide shows the figures side by side, as planning ranges.
Will a PWA work on iPhones?
Yes, with limits. As of October 2026 the user installs it by hand from the Share menu, because iOS shows no install prompt. Push notifications work only after the app is on the Home Screen, and Safari does not support the Background Synchronization API. We list what your feature set needs against these limits before quoting.
Can a PWA send push notifications?
Yes, on Android and desktop browsers, and on iPhone and iPad from iOS 16.4 once the user has added the app to the Home Screen. On every platform the user must grant permission, and Apple requires the request to follow a tap. A notification the user did not ask for is the quickest way to lose that permission.
Can a PWA be listed in the Play Store or the App Store?
A PWA can be packaged for app stores. MDN documents the routes for Google Play and the Microsoft Store, and names PWABuilder as a packaging tool that also targets the iOS App Store. Each store sets its own conditions. If store presence is the main goal, compare that route with a cross-platform app before deciding.
Can you turn our existing website into a PWA?
Usually, if the site is served over HTTPS and we can change its code. The work is a manifest, a service worker, a caching plan and an offline state for each screen. It is quoted after we have read the existing code, because the cost model has no line for conversion work.
Who owns the code?
You do. The client owns 100% of the source code and IP that WavX ships. The PWA is served from your own domain and hosting account.
Sources
- MDN: Making PWAs installable · read 2 October 2026
- MDN: Installing and uninstalling web apps · read 2 October 2026
- web.dev: What does it take to be installable? (Chrome install criteria) · read 2 October 2026
- web.dev Learn PWA: Installation · read 2 October 2026
- web.dev Learn PWA: Progressive Web Apps (platform support and in-app browsers) · read 2 October 2026
- web.dev Learn PWA: Service workers · read 2 October 2026
- WebKit: WebKit Features in Safari 26.0 (every site can be a web app on iOS and iPadOS) · read 2 October 2026
- WebKit: Web Push for Web Apps on iOS and iPadOS · read 2 October 2026
- Apple Developer: Sending web push notifications in web apps and browsers · read 2 October 2026
- Apple iPhone User Guide: Turn a website into an app in Safari on iPhone · read 2 October 2026
- MDN: beforeinstallprompt event (browser compatibility) · read 2 October 2026
- MDN: Push API (browser compatibility) · read 2 October 2026
- MDN: Background Synchronization API (browser compatibility) · read 2 October 2026
- MDN: Service Worker API · read 2 October 2026
- Chrome for Developers: Debug Progressive Web Apps (DevTools Application panel) · read 2 October 2026
- StatCounter Global Stats: Mobile operating system market share in India, September 2026 · read 2 October 2026
Related
Build your own software — your way, your pricing.
WavX Solutions is here to create your own software in a fully custom way, built exactly how you work — with a pricing model that fits your business. Connect now and let's build it.