Repository navigation
Plan Folder
Everything about your plan lives in one folder that you own. The code never stores your data anywhere else.
- Layout
- Creating one
- The config folder
- Splitting or combining config files
- Editing by hand
- The data folder
- App state
- Which plan opens
- Backing up and moving
MyFinancialPlan/
config/ # settings (YAML)
config.yaml # plan, household, savings, investments, assumptions
sources.yaml # CSV sources and their columns
categories.yaml # categories
rules.yaml # categorization rules
data/ # your CSV exports
.financial_planner/
state.json # planner edits and saved scenarios
pixi.toml # optional, see Installation
pixi run financial_plan init ~/MyFinancialPlan # blank starter (commented YAML)
pixi run financial_plan init ~/DemoCopy --demo # a copy of the fictional demostart also creates ~/FinancialPlan automatically the first time if there's no plan to open (see
Which plan opens).
Every *.yaml / *.yml file in config/ is read. Each file is a mapping of sections
(plan, household, sources, rules…), and the sections from all files are merged. The full
list of sections and fields is in the Config Reference.
Use whatever layout you like:
-
One file: everything in
config/config.yaml. -
Split (what
initcreates):config.yaml,sources.yaml,categories.yaml,rules.yaml. -
Your own split: e.g.
config/people.yamlholdinghousehold,config/money.yamlholdingsavingsandinvestments.
The one rule: a section can only be in one file. If two files both have rules:, the app tells
you which two.
When the Settings Editor saves a section it writes it back to the file it came
from, keeping your comments and formatting. New sections go to sources.yaml, categories.yaml,
rules.yaml or config.yaml as appropriate.
Any text editor works. Save, then reload the page; no restart needed. If something is wrong the
app shows a banner with the exact problem (e.g. plan.months: Input should be greater than or equal to 1) and opens Settings so you can fix it. financial_plan validate checks from the command line.
Typos in field names are errors (not silently ignored), so mistakes surface quickly.
Put CSV exports here (subfolders are fine). Each data source says which files are
its own, using names or patterns like data/visa*.csv. Files that no source matches are ignored.
You can also upload files from Settings › Data sources.
.financial_planner/state.json keeps what you change on the page (planner amounts, sliders,
toggles) and your saved scenarios. Delete it to start fresh. It's separate
from config/ so your settings stay clean.
financial_plan start with no folder opens, in order:
- the current folder, if it has a
config/folder; - the last plan you opened (remembered in
~/.financial_planner.json); -
~/FinancialPlan, created from the blank template if needed.
Copy the whole folder. It's self-contained: config, data, state and scenarios move together. Keep backups private (Privacy and Safety).
Getting started
Using the app
- Tour of the App
- Monthly Planner
- Explore Spending
- College 529s
- Retirement
- Spending Over Time
- Scenarios and Sharing
Setting up your plan
- Plan Folder
- Settings Editor
- Data Sources (CSVs)
- Categories
- Categorizing and Rules
- Setup with an AI Assistant
Reference