Changelog
All notable changes to flexStats are documented here. This project uses Semantic Versioning and follows the Keep a Changelog format.
Reconstructed on 2026-04-23 from git history. Confirm accuracy before treating as authoritative.
[Unreleased]
[1.0] - 2026-04-23
Added
- 11 chart types: bar, line, area, scatter, pie, donut, heatmap, waterfall, scatter3d, bar3d, surface
- Chart3D integration for 3D scatter, bar, and surface plots (macOS 26+)
- Chart palette system with 6 built-in palettes (vibrant, ocean, sunset, forest, monochrome, pastel)
- 8 themes: minimal, bold, print, executive, startup, academic, dark, ocean
- Typography system driven by theme properties
- Multi-series support, tooltips, responsive sizing, and animation across all chart views
- Waterfall chart with running totals and color-coded positive/negative bars
- Donut chart with configurable inner radius
- FoundationModels integration for chart suggestions, column labeling, and data description
- Heuristic fallback for devices without Apple Intelligence
- “Suggest a chart” in the chart editor
- Intelligence suggestions surfaced during data import
- On-device intelligence — data never leaves the Mac, full opt-out via Settings
- Liquid Glass design language on toolbar, sheets, buttons, tooltips
- Quick-start flow for new documents (import, choose, customize)
- Progressive disclosure in chart editor (DisclosureGroup for style/advanced options)
- 3 sample
.flexstatsdocuments (sales, analytics, survey) - Open-source file format spec (
FILE_FORMAT.md, CC BY 4.0) - Bundle validator (
FlexStatsValidator) - KPI cards (
flexkpiblock), data tables (flextableblock), grid layouts (flexgridblock) - Form-based chart editor — non-technical users author charts without typing YAML
- PDF export with print-quality rendering, cover pages, page breaks, headers/footers, vector chart embedding
- CSV import via TabularData, XLSX import via CoreXLSX
- Detector framework: header row, footnote, subtotal, multi-table, currency column, date column, mixed type detection
- Visual data cleaning UI with highlighted issues and one-click confirmations
- Data refresh from original imported files with schema diff surfacing
- ChartDSL parser and validator
- Markdown parser + serializer with round-trip preservation
.flexstatsbundle read/write via FileWrapperDocumentGroup-based document lifecycle with autosave and versioning
Notes
- Deployment target: macOS 26
- This is the initial public release, combining work from v0.1 through v1.0
[0.1] - 2026-04-22
Added
- FlexStatsCore package scaffolding
- Markdown parser + serializer with round-trip tests
.flexstatsbundle read/write via FileWrapperDocumentGroupapp that opens.flexstatsbundles and shows title + Markdown prose- Initial project structure and build configuration