RentalMath
Offline & PWA Disclosure
How RentalMath works offline and as an installed Progressive Web App.
In This Document
1Progressive Web App
RentalMath is built as a Progressive Web App (PWA). A PWA is a web application that can be installed on your device like a native app and can function offline using cached resources. RentalMath meets the PWA criteria including HTTPS delivery, a Web App Manifest, and a Service Worker.
Installing RentalMath as a PWA is optional. The App functions identically whether accessed via browser or installed to your home screen. No app store is required for installation.
2Service Worker and What Is Cached
RentalMath registers a Service Worker in your browser. The Service Worker intercepts network requests and serves cached responses when you are offline or on a slow connection. The following types of resources are cached:
- App shell: HTML, CSS, and JavaScript files necessary to load and run the App interface.
- Static assets: Icons, fonts (if pre-cached), and other non-changing assets.
- Third-party CDN assets: Bootstrap, the lz-string library, and Google Fonts stylesheets/font files are cached so the App renders correctly offline.
- Legal documents: all pages in this legal section are pre-cached so you can read them offline.
- Calculation engine: The JavaScript modules that perform real estate calculations are cached so they work offline.
The following are not cached by the Service Worker:
- Firebase Authentication tokens (managed by Firebase SDK).
- Firestore deal data (synced over the network; the Firebase SDK maintains its own offline cache in IndexedDB).
- Live property and market data lookups (RentCast and public data sources require an internet connection; recent analyses are saved with your deal data on-device).
Service Worker caching uses the browser's Cache Storage API. See the Storage, Cookies & Caching Notice for storage quotas and how to clear cached data.
3Offline Functionality
Signed Out (No Account)
Because deal data is stored on-device (IndexedDB / localStorage), the calculator is functional offline. You can create and edit deals without an internet connection; new data is saved locally immediately. Fetching fresh property and market data for a new address requires a connection.
Signed In
Signed-in users can use the calculator offline, but:
- New deals or edits made offline are stored on-device and synced to Firestore when connectivity is restored.
- Deals stored only in Firestore (and not yet loaded into the local cache) may not be accessible offline.
- Cloud sync status indicators in the App reflect real-time connectivity; offline activity is reconciled on reconnection.
- Property-level data lookups (RentCast) are not available offline.
4Stale Content
Service Worker updates are applied when:
- You close all tabs running RentalMath and reopen the App.
- The browser finds an updated worker and you tap Reload on the "App updated — reload to apply" notice the App displays. Simply discovering an update does not apply it; the new version activates only after you reload or close all RentalMath tabs and reopen the App.
If you believe you are seeing an outdated version of the App, you can force a reload by:
- Performing a hard refresh (Ctrl+Shift+R on Windows/Linux, Cmd+Shift+R on Mac).
- Clearing the site's cache and storage via your browser's developer tools or site settings.
We are not liable for any issues arising from use of a stale cached version of the App after a material update has been deployed.
5Removing the Service Worker
You can unregister the RentalMath Service Worker at any time. Doing so removes the cached App shell and disables offline functionality. The App will still function when online. To unregister the Service Worker:
- Open your browser's developer tools (F12).
- Navigate to Application > Service Workers.
- Click "Unregister" next to the RentalMath service worker.
Alternatively, clearing all site data for RentalMath's domain (Application > Storage > Clear site data in Chrome DevTools) will remove the Service Worker, Cache Storage, and localStorage simultaneously. Clearing site data will delete deal data stored only on this device (all signed-out users' deals, and any signed-in edits not yet synced).
See the Storage, Cookies & Caching Notice for instructions specific to each browser.
6Home-Screen Installation
RentalMath can be installed to your device's home screen or desktop as a PWA. The installation experience varies by device and browser:
- Chrome (Android/Desktop): An "Install" prompt or icon appears in the address bar when the PWA criteria are met. You can also use the browser menu (three-dot menu > "Install App" or "Add to Home Screen").
- Safari (iOS/iPadOS): Tap the Share button and select "Add to Home Screen." Note that iOS/iPadOS Safari has additional restrictions on PWA capabilities, including limited background sync support.
- Other browsers: Installation availability varies. Refer to your browser's documentation.
When installed as a PWA, RentalMath runs in a standalone window (without the browser's address bar) but remains a web application. It is not a native app and does not have access to native APIs beyond those available to web apps in your browser. Updates are delivered automatically via the Service Worker mechanism described in Section 2.
RentalMath