VynFi/financial-sankey-explorer
0
๐ธ Financial Sankey Explorer
Interactive multi-step funds-flow view of synthetic financial statements produced by `datasynth-data`. Pick an entity, a period, and a statement and read the money as it flows:
- Income statement โ a left-to-right waterfall:
Revenue โ {Cost of Sales, Gross Profit} โ {operating-expense sub-bands, Operating Income} โ {Tax, Net Income}. - Cash flow โ each line item flows into its section (Operating / Investing / Financing), and the sections into Net Change in Cash.
Red bands are reductions / outflows; blue bands are retained amounts / inflows.
Data
The app renders the engine's native export, financial_reporting/sankey/flows.json (emitted when financial_reporting.sankey: true). Each entry is a self-describing SankeyFlow:
{
"statement_type": "income_statement",
"fiscal_year": 2024, "fiscal_period": 3,
"company_code": "1000", "currency": "USD", "is_consolidated": false,
"period_start": "2024-03-01", "period_end": "2024-03-31",
"nodes": [{ "id": 0, "label": "Revenue", "section": "Revenue", "value": "1200000", "is_subtotal": false, "line_code": "IS-REV" }],
"links": [{ "source": 0, "target": 1, "value": "480000", "label": "Gross Profit", "is_contra": false }]
}fiscal_period: 0 denotes a full-year rollup. Upload your own flows.json, or browse the built-in demo (constructed with the same waterfall logic as the engine's Rust builder, so the shape is faithful).
Generate your own
datasynth-data generate --config config.yaml --output ./out
# with financial_reporting: { enabled: true, sankey: true, opex_breakout: true }
# โ ./out/financial_reporting/sankey/flows.json