Skip to content
 
 

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Acme Software

Acme Charting

A collection of Flutter packages for financial charting and technical analysis.

License: MIT Flutter 3.44+ Dart 3.12+


Packages

Package Description Version
acme_chart Financial charting library — candlestick/line charts, indicators, drawing tools 1.0.0
acme_indicators Pure Dart technical analysis computations 1.0.0

Features

acme_chart

  • Chart Types — Candlestick (OHLC) and line series
  • 20+ Technical Indicators — RSI, MACD, Bollinger Bands, Ichimoku Cloud, ADX, Alligator, Aroon, CCI, Donchian Channels, DPO, Fractals, Gator, MA/MA Rainbow/MA Envelope, Parabolic SAR, ROC, SMI, Stochastic Oscillator, Williams %R, ZigZag, and more
  • Drawing Tools — Trend lines, horizontal/vertical lines, rays, channels, rectangles, Fibonacci fan, and more
  • Interactive — Pinch-to-zoom, pan, crosshair, tap-to-select
  • Barriers & Markers — Entry/exit markers, price barriers, tick indicators
  • Theming — Built-in dark/light themes, fully customizable
  • Persistent Storage — Saves indicator and drawing tool configuration via shared_preferences

acme_indicators

  • Standalone Dart package — no Flutter dependency required for computations
  • Used internally by acme_chart for all indicator calculations

Getting Started

Add acme_chart to your pubspec.yaml:

dependencies:
  acme_chart: ^1.0.0

Basic Usage

import 'package:acme_chart/acme_chart.dart';

AcmeChart(
  mainSeries: CandleSeries(
    candles: candles, // List<Candle>
  ),
)

With Indicators and Drawing Tools

Use AcmeChart for the full-featured widget with UI controls for adding/removing indicators and drawing tools:

AcmeChart(
  mainSeries: CandleSeries(candles: candles),
  pipSize: 2,
  granularity: 60, // seconds
)

Use the lower-level Chart widget when you need manual control:

Chart(
  mainSeries: CandleSeries(candles: candles),
  overlaySeries: [
    BollingerBandsSeries(candles: candles),
  ],
  bottomSeries: [
    RSISeries(candles: candles),
    MACDSeries(candles: candles),
  ],
)

Architecture

XAxisWrapper          ← zoom/scroll, data management
  └── GestureManager  ← pan, zoom, tap
      └── Chart        ← visualization coordinator
          ├── MainChart    ← candles, overlays, drawings, crosshair
          └── BottomCharts ← RSI, MACD, and other independent-axis indicators

See doc/how_chart_lib_works.md for a detailed technical walkthrough.


Development

This repository uses Melos to manage the monorepo.

# Install dependencies across all packages
dart pub get

# Analyze all packages
flutter analyze --no-fatal-infos

# Format code
dart format .

# Run tests
flutter test

# Run code generation (JSON serialization)
dart run build_runner build --delete-conflicting-outputs

Example App

cd packages/acme_chart/example
flutter run

Theming

The chart ships with ChartDefaultDarkTheme and ChartDefaultLightTheme, which switch automatically based on Theme.of(context).brightness. Override specific tokens by extending either class:

class MyChartTheme extends ChartDefaultDarkTheme {
  @override
  Color get backgroundColor => const Color(0xFF1A1A2E);
}

Contributing

See CONTRIBUTING for code style, commit format, and review checklist.

  • Follow Conventional Commits for PR titles
  • Run flutter analyze and flutter test before submitting
  • Add dartdoc comments to all public APIs

License

MIT © 2026 Acme Software LLC

About

Flutter monorepo for financial charting - candlestick/line charts, 20+ technical indicators, drawing tools, and interactive gestures.

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages