Roadmap / Update Plan

easy-chart-lit · Manual

Roadmap / Update Plan

This chapter describes the overall direction and planned items for future EasyChart updates.

  • This file is not split by version phases (more detailed planning can be added inside each chart type chapter later)
  • This file is organized by “capability categories” (you can treat it as a roadmap table of contents)

Free / Pro split (release strategy)

Free (standalone package)

  • Positioning: cover the most common AssetStore use cases, forming a full loop of “configurable + previewable + runtime data injection”.
  • Includes: existing basic 2D chart types, runtime injection (ChartFeed / ApplyJson), editor workflow such as EasyChartLibraryWindow.

Pro (standalone package, includes all Free)

  • Positioning: provide clear differentiated capabilities and a long-term expansion path on top of Free.
  • Includes: everything in Free + Pro incremental features (advanced effects / new chart types / 3D / tooling, etc.).

Compatibility strategy

  • When Free encounters Pro-only assets/configurations: it is allowed to fail with a direct error (no downgrade compatibility required).

Pro initial selling points priority

  • A: new chart types
  • B: 3D charts
  • C: advanced 2D visual effects (e.g. texture UV animation, special rendering effects)

Appendix: version plan (tentative timeline)

Note: the following is a tentative monthly/quarterly cadence. Specific dates can be refined after team capacity and release window are confirmed.

2026 Q1 (Jan–Mar): stabilization + complete Free loop

  • 2026-01 (Free v1.0.x):
    • Fix/finalize: stability of JSON Injection panel and example generation/parsing (based on current TODO)
    • Docs & samples: align with the latest data structures and panel capabilities
  • 2026-02 (Free v1.1.0):
    • 2D UX improvements (Free scope): Bar rounded corners, hover effects (if not implemented yet, land in this version)
    • Editor UX: small workflow improvements in LibraryWindow (no Pro dependencies)
  • 2026-03 (Free v1.1.x):
    • Regression fixes + performance/GC optimization (large data refresh, tooltip/interaction stability)

2026 Q2 (Apr–Jun): Pro v1.0 (new chart types first)

Each series type adds an animation component collection, allowing effects such as Point blinking and TextureFill UV animation.

  • 2026-04 (Pro v1.0.0):
    • Finalize Pro package structure and release workflow (Pro includes all Free)
    • New chart types (batch 1): Gauge / Funnel (one or both depending on complexity)
  • 2026-05 (Pro v1.0.x):
    • New chart types (batch 2): BoxPlot / Candlestick (implement one with higher priority)
    • Improve Pro-only error hints and readable Editor-side error messages
  • 2026-06 (Free v1.2.0 + Pro v1.1.0):
    • Free: continue filling common 2D capabilities and stability
    • Pro: expand new chart types (Treemap / Sunburst research or first version)

2026 H2 (Jul–Dec): 3D roadmap and effects

  • 2026 Q3 (Jul–Sep) (Pro v2.0 or v1.2+):
    • 3D charts (batch 1): 3D Bar / 3D Scatter (prioritize one to complete an end-to-end workflow)
    • 3D rendering pipeline and interaction foundations (iterate by minimum viable slices)
  • 2026 Q4 (Oct–Dec):
    • 3D Surface (research/experimental)
    • Advanced 2D visual effects (Pro): texture UV animation (and more complex effects later)
    • Tooling improvements: Theme / direct networking / automated tests (pick one as the main quality track)

1. Chart type expansion plan (Chart Types)

1.1 2D charts (enhancements to existing system)

  • Goal: without adding too many SerieType, fill common expressions via settings/variants.
  • Candidate directions (examples):
    • Line: more line types/fills/annotations (richer markers/threshold lines, etc.), texture UV animation (Pro)
    • Bar: more stacking modes, percent stacking, waterfall modes, rounded bar caps (Free), hover effects (Free), texture UV animation (Pro)
    • Scatter: more mapping dimensions (size/color), density expressions (aggregation/gridding)
    • Pie: more layout/aggregation strategies, label strategies, interactions

1.2 New chart types (may add new SerieType)

  • Goal: support more common standalone chart categories in AssetStore.
  • Candidate directions (examples):
    • Gauge
    • Funnel
    • BoxPlot
    • Candlestick (OHLC)
    • Treemap / Sunburst (hierarchical visualization)
    • Sankey / Graph (more complex structural charts; later)

1.3 3D charts (3D Charts)

  • Goal: provide a 3D chart capability set (possibly a separate rendering pipeline).
  • Candidate directions (examples):
    • 3D Bar / 3D Column
    • 3D Scatter
    • 3D Surface (higher complexity; later)

2. Multi-axis & coordinate systems

  • Goal: enhance multi-axis scenarios while keeping semantics clear.
  • Directions:
    • more axis combinations (dual Y axes, top/bottom X, mixed left/right Y)
    • clearer axis binding strategy (which axis a Serie binds to, which axis tooltip/label formats with)
    • constraints and hints for switching/mixing coordinate systems (avoid confusing configs)

3. Font & text system

  • Goal: unify text rendering look and configurable options, reducing UI Toolkit cross-platform differences.
  • Directions:
    • more complete text styles (font, size, weight, color, outline/shadow, etc.)
    • text layout strategies (wrap, truncate, ellipsis, alignment, anchors)
    • enhanced number formatting (thousands separator, units, percent, scientific notation, etc.)

4. Time axis & log axis

  • Goal: improve expression for time series and wide-range values.
  • Directions:
    • time axis: ticks, formatting, interval strategies (day/week/month/year)
    • log axis: log10/log2 ticks and labels
    • integration with data injection (how to feed time data, handle missing points)

5. Theme / palette system

  • Goal: abstract “colors/fonts/default styles” from individual Profiles into reusable themes.
  • Directions:
    • Theme assets (Palette + fonts + default styles)
    • override strategy between Profile and Theme (theme defaults vs Profile overrides)
    • theme preview, switching, theme library

6. Direct networking / data binding

  • Goal: reduce integration cost from network API to chart.
  • Directions:
    • standard input protocol based on ChartFeed
    • optional API Envelope support (e.g. {code,message,data})
    • samples: HTTP fetch -> parse -> Apply
    • caching, throttling, error hints, fallback strategies

7. Automated tests & QA

  • Goal: reduce iteration risk and make refactors safer.
  • Directions:
    • data migration tests (serialization compatibility)
    • rendering regression tests (screenshot diff/pixel tolerance, or key mesh assertions)
    • interaction tests (tooltip/hit test stability)
    • performance benchmarks (large data refresh, GC, frame time)

8. Editor workflow & tooling

  • Goal: make configuration, preview, injection, and reuse smoother.
  • Directions:
    • LibraryWindow: templates/copy/import-export/batch operations
    • JSON Injection: stronger protocol compatibility, better error localization, better example generation
    • clearer manual and sample project