This project was generated using Angular CLI version 21.2.5.
To start a local development server, run:
ng serveOnce the server is running, open your browser and navigate to http://localhost:4200/. The application will automatically reload whenever you modify any of the source files.
Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
ng generate component component-nameFor a complete list of available schematics (such as components, directives, or pipes), run:
ng generate --helpTo build the project run:
# Angular Pension Retirement Forecast Tool
Standalone Angular application (v20+) for projecting retirement outcomes for "Me" and an optional partner across DC pensions, partner DB pensions, and ISAs.
## Setup
```bash
npm installng serveOpen http://localhost:4200.
ng build- Standalone Angular architecture with signals and
inject() - Angular Material stepper workflow: Personal, Portfolio, Projection Settings, Drawdown Plan, Results
- Reactive forms for all inputs with validation
- Forecast engine in-browser (no backend)
- ECharts stacked area visualization via
ngx-echarts - Year-by-year forecast table with exhaustion highlighting
- Auto-recalculate on input change (500ms debounce) and manual recalculate button
- JSON export/import of input state
- Projects from current age to age 100 (Me), year by year
- Pre-retirement: applies annual contributions and net growth (
returnRate - charges) - Retirement event handling:
- DC pots apply tax-free cash percentage (with optional simplified HMRC cap)
- Partner DB annual pension starts at partner retirement
- Partner DB lump sum is moved into a cash ISA pot
- Post-retirement:
- Drawdown schedule is linearly interpolated by age
- Drawdown requirement is inflation-adjusted from today's money
- Guaranteed income (DB + state pension) offsets drawdown need first
- Any deficit is withdrawn from DC then ISA balances (largest first, or specific source)
- Lump sums are applied at configured ages
fundsExhaustedis flagged once all DC/ISA balances are depleted- Projection continues after exhaustion so DB/state income remains visible
- Values are projected in nominal money.
- Drawdown is shown gross and potentially taxable.
- This app does not perform personal tax calculations.