--- title: Financial Sankey Explorer emoji: 💸 colorFrom: green colorTo: blue sdk: gradio sdk_version: 6.15.2 app_file: app.py pinned: false license: apache-2.0 short_description: Funds-flow Sankeys from synthetic financial statements tags: - vynfi - sankey - financial-statements - cash-flow - synthetic-data --- # 💸 Financial Sankey Explorer Interactive multi-step **funds-flow** view of synthetic financial statements produced by [`datasynth-data`](https://vynfi.com). 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`: ```json { "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 ```bash datasynth-data generate --config config.yaml --output ./out # with financial_reporting: { enabled: true, sankey: true, opex_breakout: true } # → ./out/financial_reporting/sankey/flows.json ```