60 lines
2.1 KiB
Markdown
60 lines
2.1 KiB
Markdown
# idea39-vizforge-interactive-economic
|
|
|
|
VizForge is a Python scenario studio for startup economics. It lets founders describe a business in a declarative YAML DSL, run stochastic simulations across macro shocks, and generate investor-facing markdown and SVG artifacts with a reproducible seed and source digest.
|
|
|
|
## What it does
|
|
- Parses a versioned business model DSL with typed validation.
|
|
- Simulates revenue, cash runway, dilution, and LTV/CAC under macro uncertainty.
|
|
- Compares scenarios such as recession, supply shocks, or tighter funding.
|
|
- Generates an investor brief with KPI tables and slide-ready SVG charts.
|
|
- Exposes a CLI for exporting reports from a YAML model file.
|
|
|
|
## Package layout
|
|
- `src/idea39_vizforge_interactive_economic/models.py` - typed model schema.
|
|
- `src/idea39_vizforge_interactive_economic/dsl.py` - YAML parser and serializer.
|
|
- `src/idea39_vizforge_interactive_economic/simulation.py` - Monte Carlo engine and sensitivity analysis.
|
|
- `src/idea39_vizforge_interactive_economic/artifacts.py` - markdown report and SVG generation.
|
|
- `src/idea39_vizforge_interactive_economic/cli.py` - command-line entry point.
|
|
|
|
## DSL example
|
|
```yaml
|
|
name: Acme AI
|
|
horizon_months: 12
|
|
starting_cash: 250000
|
|
macro:
|
|
gdp_growth: 0.02
|
|
inflation: 0.03
|
|
consumer_confidence: 102
|
|
revenue_streams:
|
|
- name: core
|
|
starting_customers: 100
|
|
price_per_customer: 120
|
|
monthly_growth_rate: 0.06
|
|
monthly_churn: 0.04
|
|
gross_margin: 0.82
|
|
acquisition_rate: 15
|
|
costs:
|
|
- name: cloud
|
|
monthly_amount: 10000
|
|
financing:
|
|
- month: 0
|
|
instrument: equity
|
|
amount: 150000
|
|
valuation: 3000000
|
|
```
|
|
|
|
## CLI
|
|
```bash
|
|
vizforge path/to/model.yaml --output-dir vizforge-output --sims 1000 --seed 7
|
|
```
|
|
|
|
This writes `report.md` plus SVG charts into the output directory.
|
|
|
|
## Development
|
|
- Install the package in editable mode: `python3 -m pip install -e .`
|
|
- Run tests: `python3 -m pytest`
|
|
- Build the distribution: `python3 -m build`
|
|
|
|
## Reproducibility
|
|
Every simulation bundle records a deterministic seed and SHA-256 digest of the parsed DSL text so the same assumptions can be replayed later.
|