bonguynvan/tradecanvas
bonguynvan/tradecanvas has 33 GitHub stars and 4 forks. GitHot measured 0 stars in 24 hours and +2 in 7 days. Last checked 2026-11-10 00:19 UTC. Last push 2026-11-04.
Trading charts for the web, drawn with Canvas 2D or WebGL: 134 indicators, 69 drawing tools, 18 chart types, live exchange feeds, orders on the chart, replay and backtesting, touch-ready on phones. Zero dependencies. TypeScript, React, Vue, Svelte.
What you can do
- 18 chart types, 134 indicators, 73 drawing tools, indicators on indicators, alerts on lines, undo and redo.
- Trading on the chart: positions with live P&L, orders and stops you drag, a paper broker or your own.
- Live data from Binance, Bybit, Coinbase, Kraken and Upbit, or your own feed in about twenty lines.
- Fast: a million bars panned at 60 fps with WebGL; a live tick in about a microsecond; ten minutes of 30,000 trades a second on a million bars with no memory growth (soak).
Measured star growth
- in 24h
- 0
- in 7 days
- +2
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalLive demo · Docs · Examples · System audit · Changelog
English · Tiếng Việt · 简体中文 · 日本語 · 한국어 · Español
A complete trading chart for the web. Candlesticks to Renko, 134 indicators, 73 drawing tools, live feeds and orders on the chart, on Canvas 2D or WebGL, with no third-party dependencies. Use the full ChartWidget, or build your own interface on the headless Chart, in TypeScript, React, Vue or Svelte.
Highlights
- 18 chart types, 134 indicators, 73 drawing tools, indicators on indicators, alerts on lines, undo and redo.
- Trading on the chart: positions with live P&L, orders and stops you drag, a paper broker or your own.
- Live data from Binance, Bybit, Coinbase, Kraken and Upbit, or your own feed in about twenty lines.
- Fast: a million bars panned at 60 fps with WebGL; a live tick in about a microsecond; ten minutes of 30,000 trades a second on a million bars with no memory growth (soak).
- A workspace: grids of charts, layouts, bar replay, backtesting.
- Yours to shape: themes, five looks, 133 switches, plugins; 30 languages; phones and apps.
Orders you drag: stops, targets and limits move with the mouse. |
Bar replay: play a market back, then trade it on paper. |
Grids: up to six charts, linked by symbol, interval, crosshair or time. |
Your look: Print (paper and ink, kept to the golden ratio), Studio, Terminal, Capsule, Desk (a desktop trading window), light or dark, or your own tokens. |
|
On phones: a finger pans, zooms, draws and drags orders, and the widget lays itself out for a small screen. It also runs in a WebView, React Native, Capacitor or Tauri. |
Quick start
npm install @tradecanvas/chart
import { ChartWidget } from '@tradecanvas/chart/widget'
import { BinanceAdapter } from '@tradecanvas/chart'
new ChartWidget(document.getElementById('chart')!, {
symbol: 'BTCUSDT',
timeframe: '5m',
theme: 'dark',
adapter: new BinanceAdapter(), // live data, no API key
trading: true,
})
The headless Chart takes your own bars (chart.setData(bars)) and leaves the interface to you. A source of your own is a DataFeed of two methods (getBars, subscribeBars), given as feed wherever an adapter goes; one feed serves any number of charts. For React, Vue and Svelte, @tradecanvas/react, /vue and /svelte wrap it in a component with the same props.
Documentation
Getting started · API · Indicators · Drawing tools · Realtime · Trading · Styling · Frameworks · Plugins · Phones and apps · Performance
The docs are in English, Tiếng Việt, 简体中文, 日本語, 한국어 and Español. Measurements, limits and how it is tested are on the system audit.
AI coding tools
The agent skill in skills/tradecanvas teaches coding agents the API, with examples that CI type-checks. In Claude Code:
/plugin marketplace add bonguynvan/tradecanvas
/plugin install tradecanvas@tradecanvas
Other agents (Cursor, Codex, Copilot and more): npx skills add bonguynvan/tradecanvas. Without a skill, llms.txt and llms-full.txt give an assistant the docs in one file. Changing TradeCanvas itself with an agent? AGENTS.md holds the repo's rules.
The MCP server @tradecanvas/mcp looks up indicators, drawing tools, options, feature switches and style keys in the library's own catalog, and checks an options object before it is used (set it up in other clients):
claude mcp add tradecanvas -- npx -y @tradecanvas/mcp
On Windows outside WSL: claude mcp add tradecanvas -- cmd /c npx -y @tradecanvas/mcp. In Git Bash, which runs the ! commands of Claude Code on Windows, write //c: Git Bash turns /c into a path.
More
- Packages:
@tradecanvas/chart(the chart and the widget),react·vue·svelte, andanalyticsfor backtests, andmcpfor coding agents. - Previews: every pull request and commit on
mainis on pkg.pr.new, installable before a release. - Browsers: Chrome 80+, Edge 80+, Firefox 80+, Safari 14+.
- For businesses: no logo to show, nothing to apply for; the For businesses page answers an IT review. [email protected]
- Related: bo-grid, a fast Svelte data grid for the table half of a trading desk.
- Contributing: questions in Discussions, bugs in the issues, and CONTRIBUTING.md for pull requests. Security issues: SECURITY.md.
- Sponsor: TradeCanvas is free and built in the open; GitHub Sponsors keeps it going.
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
458,826 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,475 starsreact/react
The library for web and native user interfaces.
252,467 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,625 stars
