Deterministic allocation engine
The Safety ↔ Growth slider runs through a pure interpolation module with hard diversification constraints, so the same input always yields the same allocation and no position can run away.
src/lib/sliderLogic.tsStartFolio helps new investors pick a simple, balanced starting point based on time horizon and risk tolerance — so the hard part becomes staying invested, not choosing.
Conservative Balanced
No sign-up and no brokerage connection. StartFolio never executes trades or holds funds — it only helps you decide what to hold.
5 short questions about your time horizon and how you would react to a drop. No account, no email, no personal data leaves your browser.
You are matched to one of four model portfolios, with a plain-English explanation of what each holding is for and what can go wrong with it.
One slider shifts the allocation along the risk spectrum. Diversification guardrails stop it from collapsing into a single-asset bet.
Each one is built from broad, liquid asset classes and comes with what it is designed for, what can go wrong, and the mistakes people most often make with it.
Capital preservation with measured growth.
30% Stocks · 45% Gov bonds · 15% Inflation bonds · 10% Cash
Read the breakdown →A classic balanced approach for most beginners.
55% Stocks · 35% Gov bonds · 5% Inflation bonds · 5% Cash
Read the breakdown →Long-term growth for patient investors.
80% Stocks · 15% Gov bonds · 5% Cash
Read the breakdown →Purchasing-power protection with balanced growth.
50% Stocks · 20% Gov bonds · 15% Inflation bonds · 10% Commodities · 5% Cash
Read the breakdown →Next.js 14 App Router, React 18 and TypeScript, with the domain logic kept out of the components and documented for whoever picks it up next.
The Safety ↔ Growth slider runs through a pure interpolation module with hard diversification constraints, so the same input always yields the same allocation and no position can run away.
src/lib/sliderLogic.tsVolatility uses the full covariance formula σₚ = √(Σ wᵢwⱼσᵢσⱼρᵢⱼ) across an assumed correlation matrix — not a weighted average — with a documented seam for swapping in real historical returns.
src/lib/metrics.tsPortfolios, asset classes, and questionnaire logic are typed data modules rather than markup, so a new portfolio is a data change and the UI follows automatically.
src/data/portfolios.tsEvery estimate is labelled illustrative at the point it is displayed, and each portfolio ships with a "what can go wrong" and "common mistakes" section instead of only upside.
src/app/summary/page.tsxThe portfolio you keep through a bad year beats the one you abandon in month three. Start with a structure you actually understand.
Find your portfolio