Migration guide
Use this page when upgrading package versions or following old documentation links.
Upgrading npm packages
npm install @efixdata/exeria-chart@latest @efixdata/exeria-chart-ui-react@latest
After upgrading:
- Run your TypeScript build —
ChartInstanceis the stable contract; new methods appear there first. - Check Changelog for feature additions in your version range.
- If you used raw
Chartclass methods, compare ChartInstance — many moved to the typed API.
Recommended integration pattern (all versions)
import { createChart } from "@efixdata/exeria-chart";
const chart = createChart({ container });
chart.init();
await chart.setMainSeriesData(candles, interval);
// on teardown:
chart.destroy();
Avoid new Chart() unless you need a method documented in Chart runtime access.
Docs URL renames (permanent redirects)
Old paths redirect automatically. Update bookmarks and internal links to the new URLs.
| Old path | New path |
|---|---|
/docs/data-bridges/* | /docs/data-connectors/* |
/docs/adapters/* | /docs/data-connectors/* |
/docs/api-reference/data-adapters | /docs/api-reference/data-connectors |
/data-bridges (marketing) | /data-connectors |
No code changes required — only documentation URLs.
Terminology: Data Bridges → Data Connectors
| Before | Now |
|---|---|
| Data Bridge / Adapter (docs) | Data Connector |
setDataAdapter(adapter) | Same method name — implements DataAdapter interface |
@efixdata/connector-binance | Binance package — published as @efixdata/connector-binance |
@efixdata/connector-bybit | Bybit package — published as @efixdata/connector-bybit |
@efixdata/connector-okx | OKX package — published as @efixdata/connector-okx |
@efixdata/connector-coingecko | CoinGecko package — published as @efixdata/connector-coingecko |
@efixdata/connector-kraken | Kraken package — published as @efixdata/connector-kraken |
@efixdata/connector-kucoin | KuCoin package — published as @efixdata/connector-kucoin |
The runtime API did not rename setDataAdapter or DataAdapter — only product and docs naming unified around Data Connectors.
API boundaries
Prefer ChartInstance over Chart
| Situation | Action |
|---|---|
| New integration | createChart() only |
moveToStamp, upsertCandle, addPanelToModel | Chart class — see runtime access |
prependMainSeriesData | Stub — use setMainSeriesData + appendMainSeriesData instead |
Events
Subscribe with typed topics on ChartInstance:
const sub = chart.subscribe("INTERVAL_CHANGE", (interval) => {
console.log(interval.symbol);
});
sub?.unsubscribe();
Full topic list: ChartInstance → Events.
ChartUI layout (1.2+)
Align breakpoints across chart and UI:
<ChartUI chart={chart} compactBreakpoint={600}>
<div ref={containerRef} style={{ width: "100%", height: "100%" }} />
</ChartUI>
createChart({
container,
layout: { mode: "auto", breakpoints: { compact: 600 } },
});
Details: Chart environment.
Multi-instrument upgrade
If you previously rendered multiple charts side by side, consider a single chart with overlays:
createChart({
container,
config: { multiInstrumentChart: true },
});
Guide: Multi-instrument charts.
Licensing changes
The core ships under AGPL v3. Closed-source products need a commercial license. Data Connector npm packages keep their own licenses (MIT for free providers).