imp_trading_chart

A high-performance trading chart engine for Flutter
Inspired by TradingView Lightweight Charts


๐Ÿš€ Overview

imp_trading_chart is a rendering-first trading chart engine for Flutter.

It is not a widget-heavy chart, but a CustomPainter + viewport-driven engine designed for performance, precision, and scalability.

Built specifically for:

  • ๐Ÿ“ˆ Financial & stock market apps
  • ๐Ÿ’น Crypto & trading platforms
  • โšก Real-time price feeds
  • ๐Ÿง  Large datasets (10k+ candles)

โœจ Visual Themes & Styles


๐ŸŽฌ Live Interaction Demos

๐ŸŒŽ Real App Integration

โ–ถ๏ธ Full Market Simulation

โœ‹ Drag / Pan Viewport

๐Ÿ” Pinch-to-Zoom


๐Ÿ“Š Chart Variants

Variant Use Case
Trading Full-featured professional chart
Simple Clean chart with labels
Compact Dashboards & lists
Minimal Sparklines & previews

๐Ÿง  Engine-First Architecture

Candle Data (List<Candle>)
        โ†“
ChartEngine (viewport, scaling, mapping)
        โ†“
CustomPainter (pixels only)

Why this matters

  • โŒ No widget-per-candle
  • โŒ No DateTime math in render loop
  • โŒ No unnecessary rebuilds

โœ… Only visible candles are processed โœ… Pan & zoom are O(1) operations โœ… Perfect for live trading data


๐Ÿ“ฆ Installation

dependencies:
  imp_trading_chart: ^0.1.0

๐Ÿš€ Basic Usage

ImpChart.trading(
  candles: candles
);

๐Ÿ•ฏ Candle Model

Candle(
  time: 1700000000,
  open: 100,
  high: 120,
  low: 90,
  close: 110,
);

โš ๏ธ The engine does not aggregate data.


๐Ÿงช Example App

A complete interactive demo is included in the example/ folder.

cd example
flutter run

๐Ÿ“š Documentation


๐Ÿ”’ Public API Stability

Only these are public & stable:

  • ImpChart
  • Candle
  • ChartStyle
  • ChartLayout
  • LabelStyles

๐Ÿšง Roadmap

  • Public ChartController
  • Programmatic zoom / pan API
  • Indicator overlays (MA, EMA, VWAP)

๐Ÿ“„ License

MIT License ยฉ Rahul Prajapati

Libraries

imp_trading_chart
imp_trading_chart