Skip to main content

Why vroom?

vroom is a specialized candlestick charting library, not a general-purpose charting toolkit. Here's when it's the right choice and how it compares to alternatives.

When to use vroom

  • You need candlestick charts with OHLCV data, not bar/line/pie/scatter charts
  • You want 60+ FPS gestures (pan, pinch, zoom) that feel native — not janky canvas redraws
  • You're building a finance or trading app that needs indicators (RSI, MACD, VWAP, MAs), drawing tools, and a crosshair
  • You want one API across platforms — the same props and types work on React Native and web
  • You need native performance on mobile — not a WebView, not a JS-only canvas

When NOT to use vroom

  • You need general-purpose charts (bar, line, pie, scatter) — use victory-native, echarts, or recharts
  • You only need simple line charts with no candlestick or indicator requirements
  • You're building a static data dashboard where interactivity isn't critical
  • You need server-side rendering — vroom requires a canvas surface (Skia)

Comparison

vroom vs. lightweight-charts

vroomlightweight-charts
RenderingSkia (C++), GPU-acceleratedHTML5 Canvas (JS)
PlatformsReact Native (iOS) + WebWeb only
Performance60+ FPS native gesturesGood, but JS-bound
IndicatorsRSI, MACD, VWAP, SMA/EMA, volumeBuilt into the chart widget
Drawing toolsTrendlines, boxes, pencil with undo/redoLines, shapes (more extensive)
CustomizationFull theme + candle styling knobsExtensive, but chart chrome is owned by the library
SizeWASM binary (~2MB) + JSJS only (~200KB)

Choose vroom if you need native mobile and want full control over the UI chrome. Choose lightweight-charts if you're web-only and want a complete prebuilt widget (toolbars, menus, built-in drawings).

vroom vs. victory-native

vroomvictory-native
FocusCandlestick charts onlyGeneral-purpose charting
RenderingSkia (C++)react-native-skia (JS-driven)
GesturesBuilt-in pan/pinch/zoom/crosshairBasic, need manual wiring
IndicatorsBuilt-in (RSI, MACD, VWAP, MAs)None (you compute data yourself)
CandlestickFirst-classNot supported natively

Choose vroom if you specifically need candlestick charts with indicators and native-feel gestures. Choose victory-native for general-purpose charts (bar, line, scatter) in React Native.

vroom vs. react-native-wagmi-charts

vroomwagmi-charts
RenderingSkia (C++) via JSIreact-native-skia (JS-driven)
Gestures60fps pan/pinch/dragBasic pan/pinch
Indicators5 built-in indicatorsNone
Drawing toolsTrendlines, box, pencil with undo/redoNone
Web supportYes (separate @vroomchart/react package)React Native only

Choose vroom for a richer, more performant charting experience with indicators and drawing tools. Choose wagmi-charts for a simpler, lighter candlestick component.

The vroom philosophy

vroom deliberately does not provide chart chrome — no built-in toolbars, menus, or preset layouts. It gives you a high-performance rendering surface and lets your app own the surrounding UI. This means:

  • Your brand, your design system, your controls
  • No fighting the library's defaults
  • Complete freedom to build exactly the trading interface you want

The trade-off: you write more UI code. The payoff: your chart looks and feels like your app, not someone else's.