Airgead targets current versions of modern browsers. It does not use a transpiler or polyfills, so browsers that lack native ES module support will not load the application JavaScript. The pages will render their HTML and CSS, but the calculator, chart, save, and export features depend entirely on the JavaScript modules and the browser APIs they call.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/airgead-investment-calculator/llms.txt
Use this file to discover all available pages before exploring further.
Supported Browsers
| Browser | Support |
|---|---|
| Google Chrome (current) | ✅ Full support |
| Microsoft Edge (current) | ✅ Full support |
| Mozilla Firefox (current) | ✅ Full support |
| Apple Safari (current) | ✅ Full support |
| Mobile Safari (iOS current) | ✅ Full support |
| Chrome for Android (current) | ✅ Full support |
| Internet Explorer | ❌ Not supported |
Required Browser APIs
Each of the following APIs must be available for Airgead to function correctly. All are natively supported in the browsers listed above.Native support for
<script type="module"> and the import/export syntax. Every JavaScript file in Airgead is an ES module. The shell component, calculation library, chart library, and page controllers are all loaded as modules and import each other directly — there is no bundle.The Web Storage API is used to persist data between sessions. Airgead stores the most recent calculation under the key
airgead_current_calc, the collection of saved plans under airgead_saved_plans, and the mock sign-in email under airgead_user. All stored data stays in the current browser and is never sent to a server.The Canvas API is used by
js/lib/charts.js to draw the year-by-year growth chart on the Results page and the side-by-side comparison chart on the Compare page. The charts include grid lines, value labels, and principal-versus-interest segments. Charts resize when the viewport width changes.The
Blob constructor is used by the downloadCsv() function in js/lib/calculator.js to create the CSV file content in memory before triggering a download. No server round-trip is required — the file is assembled entirely in the browser from the current year-by-year data.Used alongside the
Blob API to generate a temporary object URL that a programmatically created <a> element can point to. Clicking that link triggers the browser’s file-download behavior. The URL is immediately revoked after the download starts to free memory.Why Not file:// URLs
No Polyfill Strategy
Airgead intentionally ships no polyfills and produces no transpiler output. This keeps every source file readable, keeps the deployment simple (no
node_modules, no build artifacts), and keeps the browser’s network requests to a minimum. If support for older browsers becomes a requirement, a bundler such as Vite or Rollup could be added to the project — it would compile the existing ES module source into a compatible bundle without changing the application logic.