DEV Community

Bo Nguyen
Bo Nguyen

Posted on

I built my own zero-dependency financial chart engine with Canvas

If you've ever tried building a trading dashboard or a crypto app, you know the drill:

TradingView Charting Library: Powerful, but the advanced version requires strict approval, business verification, and mandatory branding.

Enterprise solutions (like AG Charts / SciChart): Insanely expensive for solo devs and indie hackers just bootstrapping an MVP.

Lightweight options: Often lack smooth interactions, custom indicator layers, or flexible drawing capabilities.

A while ago, I ran into this exact wall while working on my own trading setup. I didn’t want to pay enterprise licensing just to render candles, nor did I want to bloat my bundle with massive dependencies.

So, I decided to go down the rabbit hole and build TradeCanvas from scratch.

Candlesticks to Renko, 111 indicators, 69 drawing tools, live exchange feeds and orders on the chart. Drawn with Canvas 2D or WebGL, with zero dependencies
What I set out to solve:

  • Pure Canvas rendering: Direct control over pixel projection, rendering loop, and double-buffering without DOM thrashing.

  • 60 FPS smoothness: Viewport culling so panning across thousands of historical ticks doesn't choke the browser.

  • Clean separation of layers: Separated the background grid, main candles, crosshair overlay, and indicator pipelines so rendering one doesn't force a full repaint of everything.

  • Zero vendor lock-in: A clean, standalone library designed for developers who just want full control of their charting stack.

It's still in active development, but the core engine, multi-timeframe candle rendering, dynamic price/time scaling, and interactions are working.

Top comments (0)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.