# Design Notes

> **Staleness warning:** This document captures conceptual framing from the
> original specification. It is not kept in sync with the code. For current
> architecture and types, see `context/repo-map.md` and
> `context/design-principles.md`.

## Product Vision

Traditional spreadsheets conflate data, formulas, and presentation into a single
flat grid addressed by opaque cell references (A1, B7). This makes models
fragile, hard to audit, and impossible to rearrange without rewriting formulas.

Improvise treats data as a multi-dimensional, semantically labeled structure --
separating data, computation, and views into independent layers. Formulas
reference meaningful names, views can be rearranged instantly, and the same
dataset can be explored from multiple perspectives simultaneously.

The application compiles to a single static binary and provides a rich TUI
experience.

## Non-Goals (v1)

- Scripting/macro language beyond the formula system.
- Collaborative/multi-user editing.
- Live external data sources (databases, APIs).
- Charts or graphical visualization.
- Multi-level undo history.
