Files
astrolabe/docs/spec/README.md
T

33 lines
2.5 KiB
Markdown

# Astrolabe — Product Specification
A UX/behavioral specification of **Astrolabe**, a browser-based snippet manager for [Vega-Lite](https://vega.github.io/vega-lite/) visualizations. It describes _what the app does_ from the user's perspective so it can be recreated on any web/HTML/TS stack.
## How to read this spec
- Start with [00 · Product Overview](00-product-overview.md) for orientation and the glossary.
- Each subsequent file is one feature area and can be read on its own; they cross-reference each other by title.
- Every section describes intended behavior plus testable acceptance points ("The user can…", "When X, the system…").
- Section numbers and lettered headings (e.g. `§03G`, `§09B`) are **stable anchors** — code comments reference them. Extend by appending the next letter/number; never renumber existing ones.
## What this spec deliberately omits
- **Implementation.** No frameworks, libraries, languages, storage technologies, or code architecture are prescribed. Storage is described behaviorally (e.g. "persists locally across sessions", capacity tiers), not by naming a technology.
- **Visual design.** Structural layout (panes, regions, modal vs inline, where controls live) is specified; concrete styling, colors, and the app's visual aesthetic are left to the implementer.
- **Domain exception.** Vega-Lite and its vocabulary (specs, marks, encoding channels, field types) and data-format names (JSON, CSV, TSV, TopoJSON) _are_ named — they are the product domain, not implementation choices.
## Contents
| # | Section |
| --- | ----------------------------------------------------------------- |
| 00 | [Product Overview](00-product-overview.md) |
| 01 | [Application Shell & Navigation](01-application-shell.md) |
| 02 | [Snippet Library](02-snippet-library.md) |
| 03 | [Spec Editor & Draft/Published Workflow](03-editor-and-drafts.md) |
| 04 | [Live Preview](04-live-preview.md) |
| 05 | [Datasets](05-datasets.md) |
| 06 | [Chart Builder](06-chart-builder.md) |
| 07 | [Settings](07-settings.md) |
| 08 | [Import & Export](08-import-export.md) |
| 09 | [Data Model & Persistence](09-data-model.md) |
| 10 | [Non-Functional Requirements](10-non-functional.md) |