SDK
import { createChart, createOrderbook, PolynodeProvider } from '@polynode/charts'
const pn = new PolynodeProvider({ apiKey: 'pn_...' })
// One call. Give it a slug, token_id, or condition_id.
// Handles backfill from on-chain trades automatically.
const candles = await pn.candles('trump-2028', '1h', { days: 7 })
const chart = createChart('#my-chart')
chart.addCandleSeries().setData(candles)
// Orderbook — scrollable, clickable, tick aggregation
const book = await pn.book('trump-2028')
const ob = createOrderbook('#book', { levels: 15, tickSizes: [0.01, 0.05, 0.1] })
ob.setData(book)
// Multi-market overlay on probability scale
const overlay = createChart('#overlay', { rightPriceScale: { mode: 'probability' } })
overlay.addLineSeries({ color: '#22c55e' }).setData(yesData)
overlay.addLineSeries({ color: '#ef4444' }).setData(noData)
// Every color, line width, font, grid is composable
createChart(el, {
layout: { background: '#0f172a', textColor: '#94a3b8', fontSize: 11 },
grid: { horzLines: { color: 'rgba(148, 163, 184, 0.06)' } },
})