npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

candleview

v2.9.3

Published

An AI-powered data visualization and charting engine designed for the financial industry.

Readme

⚙️ Install

npm i candleview
yarn add candleview

🌐 Link

| Website | Website(CN) | Emulator | Markets | | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------- | ----------------------------------------------------------- | | Website | Website(CN) | Emulator | Markets |

📚 Directory

| directory | describe | | :------------------- | :------------------------------------------------------------------------------------------------------------------- | | core | CandleView Engine Core. | | website | Global official website. | | ai-proxy-service | This is the scaffolding project for CandleView AI services, which you can use to develop AI services for CandleView. | | docs | Documents. | | assets | Asset Directory. |

Props

| Parameter | Type | Default | Description | Required | | ------------------------------------- | -------------------------------------------------------------------------------------------------------- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | | theme | 'dark' \| 'light' | 'dark' | Theme mode | No | | i18n | 'en' \| 'zh-cn' | 'zh-cn' | Language setting | No | | height | number \| string | 500 | Chart height (px or percentage) | No | | width | number \| string | '100%' | Chart width (px or percentage) | No | | title | string | '' | Chart title displayed on the chart | Yes | | toppanel | boolean | false | Show top toolbar | No | | leftpanel | boolean | false | Show left drawing tools panel | No | | markData | IStaticMarkData[] | [] | Pre-drawn marks data | No | | timeframe | string | '1d' | Chart timeframe (e.g., '1m', '1h', '1d') | No | | timezone | string | 'Asia/Shanghai' | Timezone for data display | No | | data | ICandleViewDataPoint[] | [] | K-line data array | No | | ai | boolean | false | Enable AI function | No | | aiconfigs | AIConfig[] | [] | AI configuration list | No | | terminal | boolean | false | Show terminal panel | No | | isMobileMode | boolean | false | Enable mobile mode | No | | isOpenViewportSegmentation | boolean | false | Enable viewport data segmentation | No | | isCloseInternalTimeFrameCalculation | boolean | false | Disable internal timeframe calculation | No | | timeframeCallbacks | Partial<Record<TimeframeEnum, () => void>> | {} | Callbacks for custom timeframe switching | No | | mainChartIndicators | string[] | [] | Main chart indicator names to initialize (supported: 'ma', 'ema', 'bollinger', 'ichimoku', 'donchian', 'envelope', 'vwap', 'heatmap', 'marketprofile') | No | | subChartIndicators | string[] | [] | Sub chart indicator names to initialize (supported: 'rsi', 'macd', 'volume', 'sar', 'kdj', 'atr', 'stochastic', 'cci', 'bbwidth', 'adx', 'obv') | No | | danmakus | string[] | [] | Danmaku messages | No | | handleScreenshotCapture | (imageData: { dataUrl: string; blob: Blob; width: number; height: number; timestamp: number }) => void | undefined | Callback for screenshot capture | No |

🚀 Quick Start

import { CandleView } from "./CandleView";

const App = () => {
  return (
    <CandleView
      data={candleData}
      title="Test"
      theme={theme}
      i18n={i18n}
      markData={markData}
      height={800}
      leftpanel={true}
      toppanel={true}
      terminal={true}
    />
  );
};

Implement custom timeframe logic.

import { CandleView } from "./CandleView";

const App = () => {
  return (
    <CandleView
      data={candleData}
      title="Test"
      theme={theme}
      i18n={i18n}
      markData={a}
      height={800}
      leftpanel={true}
      toppanel={true}
      terminal={true}
      ai={true}
      timezone="America/New_York"
      timeframe="1m"
      isCloseInternalTimeFrameCalculation={true} // the internal timeframe calculation logic has been disabled.
      timeframeCallbacks={{
        "1m": () => {
          // Implement a custom data source switching mechanism for a 1m timeframe.
        },
        "5m": () => {
          // Implement a custom data source switching mechanism for a 5m timeframe.
        },
        "1D": () => {
          // Implement a custom data source switching mechanism for a 1D timeframe.
        },
        "1H": () => {
          // Implement a custom data source switching mechanism for a 1H timeframe.
        },
        "15m": () => {
          // Implement a custom data source switching mechanism for a 15m timeframe.
        },
        "30m": () => {
          // Implement a custom data source switching mechanism for a 30m timeframe.
        },
        "4H": () => {
          // Implement a custom data source switching mechanism for a 4H timeframe.
        },
      }}
      aiconfigs={[
        {
          proxyUrl: "http://localhost:3000/api",
          brand: "aliyun",
          model: "qwen-turbo",
        },
        {
          proxyUrl: "http://localhost:3000/api",
          brand: "deepseek",
          model: "deepseek-chat",
        },
        {
          proxyUrl: "http://localhost:3000/api",
          brand: "deepseek",
          model: "deepseek-chat-lite",
        },
      ]}
    />
  );
};

Danmaku System

AI Features

Supported Brands

  • OpenAI: GPT series models
  • Aliyun (Alibaba Cloud): Tongyi Qianwen and other models
  • DeepSeek: DeepSeek series models
  • Claude: Anthropic models
  • Gemini: Google models

Function Types

  • Chart Analysis: AI analyzes current chart data, providing technical analysis, trend judgments, etc.
  • Predictive Analysis: AI performs price predictions and risk assessments based on historical data

How to Use

  1. Enable AI Panel: Select the desired AI function from the left panel (e.g., "OpenAI Chart Analysis")
  2. Select Model: Choose an appropriate model from the available list in the AI chat box
  3. Configure API Key: Pre-configure API keys and models for respective brands in the aiconfigs property
  4. Start Conversation: Input questions or analysis requests to receive professional financial analysis from AI

Support Model

Aliyun

qwen-turbo、qwen-plus、qwen-max、qwen-max-longcontext、qwen2.5-0.5b、qwen2.5-0.5b-instruct、qwen2.5-7b、qwen2.5-7b-instruct、qwen2.5-14b、qwen2.5-14b-instruct、qwen2.5-32b、qwen2.5-32b-instruct、qwen2.5-72b、qwen2.5-72b-instruct、qwen2.5-coder、qwen2.5-coder-7b、qwen2.5-coder-14b、qwen2.5-coder-32b、qwen-vl-lite、qwen-vl-plus、qwen-vl-max、qwen-audio-turbo、qwen-audio-chat、qwen-math-7b、llama2-7b-chat-v2、baichuan2-7b-chat-v1、qwen-financial、qwen-financial-14b、qwen-financial-32b、qwen-medical、qwen-medical-14b、qwen-medical-32b、qwen-omni、qwen-omni-pro

DeepSeek

deepseek-chat、deepseek-chat-lite、deepseek-chat-pro、deepseek-chat-max、deepseek-coder、deepseek-coder-lite、deepseek-coder-pro、deepseek-math、deepseek-math-pro、deepseek-reasoner、deepseek-reasoner-pro、deepseek-vision、deepseek-vision-pro、deepseek-finance、deepseek-law、deepseek-medical、deepseek-research、deepseek-omni、deepseek-omni-pro、deepseek-llm、deepseek-llm-67b、deepseek-llm-131b

OpenAI

gpt-4、gpt-4-0314、gpt-4-0613、gpt-4-32k、gpt-4-32k-0314、gpt-4-32k-0613、gpt-4-turbo、gpt-4-turbo-preview、gpt-4-turbo-2024-04-09、gpt-4o、gpt-4o-2024-05-13、gpt-4o-mini、gpt-4o-mini-2024-07-18、gpt-3.5-turbo、gpt-3.5-turbo-0125、gpt-3.5-turbo-1106、gpt-3.5-turbo-instruct、gpt-3.5-turbo-16k、gpt-3.5-turbo-16k-0613、davinci-002、babbage-002、text-davinci-003、text-davinci-002、text-davinci-001、text-curie-001、text-babbage-001、text-ada-001、text-embedding-ada-002、text-embedding-3-small、text-embedding-3-large、dall-e-2、dall-e-3、whisper-1、tts-1、tts-1-hd、text-moderation-latest、text-moderation-stable

API Integration

The system integrates the following SDKs:

  • ohlcv-ai library provides official API calls for OpenAI, Aliyun, DeepSeek, and others.

Configuration Example

<CandleView
  data={candleData}
  title="Test"
  theme={theme}
  i18n={i18n}
  markData={a}
  height={800}
  leftpanel={true}
  toppanel={true}
  terminal={true}
  ai={true}
  aiconfigs={[
    // Simultaneously configure different models from multiple AI brands.
    {
      proxyUrl: "http://0.0.0.0/api",
      brand: "aliyun",
      model: "qwen-turbo",
    },
    {
      proxyUrl: "http://0.0.0.0/api",
      brand: "aliyun",
      model: "qwen-omni",
    },
    {
      proxyUrl: "http://0.0.0.0/api",
      brand: "deepseek",
      model: "gpt-4",
    },
    {
      proxyUrl: "http://0.0.0.0/api",
      brand: "openai",
      model: "gpt-3.5-turbo",
    },
  ]}
/>

Proxy Interface Standard

💡 Services that must be implemented in the domain configured by proxyUrl.

/analyzeOHLCV - A service specifically designed for processing OHLCV data.

Supports price event scripts

Multi Panel Performance

Performance in AI conversations

💻 Command System

Supported Commands

Basic Commands

| Command | Description | Example | | -------------------- | ------------------------------------------ | ------------ | | clear / cls | Clear terminal output | clear | | help | Show all available commands and indicators | help | | theme [light dark] | Switch theme | theme dark | | history | Show recently executed command history | history |

Indicator Operations

| Command | Description | Example | | ------------------- | ------------------------------------------- | ----------- | | open [indicator] | Open specified main or sub chart indicator | open ma | | close [indicator] | Close specified main or sub chart indicator | close rsi |

Main Chart Indicators

  • ma - Moving Average
  • ema - Exponential Moving Average
  • bollinger - Bollinger Bands
  • ichimoku - Ichimoku Cloud
  • donchian - Donchian Channel
  • envelope - Envelope
  • vwap - Volume Weighted Average Price
  • heatmap - Heatmap
  • marketprofile - Market Profile

Sub Chart Indicators

  • rsi - Relative Strength Index
  • macd - Moving Average Convergence Divergence
  • volume - Volume
  • sar - Parabolic SAR
  • kdj - KDJ (Stochastic Oscillator)
  • atr - Average True Range
  • stochastic - Stochastic Oscillator
  • cci - Commodity Channel Index
  • bbwidth - Bollinger Bands Width
  • adx - Average Directional Index
  • obv - On Balance Volume

Keyboard Shortcuts

| Shortcut | Function | | ---------- | -------------------------------------- | | / | Navigate command history | | Tab | Auto-complete current suggestion | | Enter | Execute command or confirm completion | | Ctrl + L | Clear input field | | Ctrl + C | Cancel current operation | | Esc | Clear input field and hide suggestions |

Usage Examples

$ open ma # Open Moving Average indicator
$ close bollinger # Close Bollinger Bands indicator
$ theme light # Switch to light theme
$ history # View recent command history

Technical Indicators In The Sub Chart.

Preview

Draw Graphics

Fibonacci

Gann

Mark

Theme

I18n

🔧 Configuration Options

⏰ Supported Timeframes

Second-based Timeframes

| Value | Display Name | Description | | ------- | ------------------ | ----------- | | '1S' | 1 秒 / 1 Second | 1 second | | '5S' | 5 秒 / 5 Seconds | 5 seconds | | '15S' | 15 秒 / 15 Seconds | 15 seconds | | '30S' | 30 秒 / 30 Seconds | 30 seconds |

Minute-based Timeframes

| Value | Display Name | Description | | ------- | ------------------ | ----------- | | '1M' | 1 分 / 1 Minute | 1 minute | | '3M' | 3 分 / 3 Minutes | 3 minutes | | '5M' | 5 分 / 5 Minutes | 5 minutes | | '15M' | 15 分 / 15 Minutes | 15 minutes | | '30M' | 30 分 / 30 Minutes | 30 minutes | | '45M' | 45 分 / 45 Minutes | 45 minutes |

Hour-based Timeframes

| Value | Display Name | Description | | ------- | ------------------ | ----------- | | '1H' | 1 小时 / 1 Hour | 1 hour | | '2H' | 2 小时 / 2 Hours | 2 hours | | '3H' | 3 小时 / 3 Hours | 3 hours | | '4H' | 4 小时 / 4 Hours | 4 hours | | '6H' | 6 小时 / 6 Hours | 6 hours | | '8H' | 8 小时 / 8 Hours | 8 hours | | '12H' | 12 小时 / 12 Hours | 12 hours |

Day-based Timeframes

| Value | Display Name | Description | | ------ | ------------- | ----------- | | '1D' | 1 日 / 1 Day | 1 day | | '3D' | 3 日 / 3 Days | 3 days |

Week-based Timeframes

| Value | Display Name | Description | | ------ | -------------- | ----------- | | '1W' | 1 周 / 1 Week | 1 week | | '2W' | 2 周 / 2 Weeks | 2 weeks |

Month-based Timeframes

| Value | Display Name | Description | | -------- | --------------- | ----------- | | '1MON' | 1 月 / 1 Month | 1 month | | '3MON' | 3 月 / 3 Months | 3 months | | '6MON' | 6 月 / 6 Months | 6 months |

🌍 Supported Timezones

Americas

| Timezone ID | Display Name | UTC Offset | Major Cities | | ----------------------- | -------------------- | ----------- | -------------------------- | | 'America/New_York' | 纽约 / New York | UTC-5/UTC-4 | New York, Washington DC | | 'America/Chicago' | 芝加哥 / Chicago | UTC-6/UTC-5 | Chicago, Dallas | | 'America/Denver' | 丹佛 / Denver | UTC-7/UTC-6 | Denver, Phoenix | | 'America/Los_Angeles' | 洛杉矶 / Los Angeles | UTC-8/UTC-7 | Los Angeles, San Francisco | | 'America/Toronto' | 多伦多 / Toronto | UTC-5/UTC-4 | Toronto, Montreal |

Europe

| Timezone ID | Display Name | UTC Offset | Major Cities | | ----------------- | -------------------- | ----------- | -------------------- | | 'Europe/London' | 伦敦 / London | UTC+0/UTC+1 | London, Dublin | | 'Europe/Paris' | 巴黎 / Paris | UTC+1/UTC+2 | Paris, Berlin | | 'Europe/Berlin' | 法兰克福 / Frankfurt | UTC+1/UTC+2 | Frankfurt, Amsterdam | | 'Europe/Zurich' | 苏黎世 / Zurich | UTC+1/UTC+2 | Zurich, Vienna | | 'Europe/Moscow' | 莫斯科 / Moscow | UTC+3 | Moscow, Istanbul |

Asia

| Timezone ID | Display Name | UTC Offset | Major Cities | | ------------------ | ------------------ | ---------- | ----------------------- | | 'Asia/Dubai' | 迪拜 / Dubai | UTC+4 | Dubai, Abu Dhabi | | 'Asia/Karachi' | 卡拉奇 / Karachi | UTC+5 | Karachi, Lahore | | 'Asia/Kolkata' | 加尔各答 / Kolkata | UTC+5:30 | Kolkata, Mumbai | | 'Asia/Shanghai' | 上海 / Shanghai | UTC+8 | Shanghai, Beijing | | 'Asia/Hong_Kong' | 香港 / Hong Kong | UTC+8 | Hong Kong, Macau | | 'Asia/Singapore' | 新加坡 / Singapore | UTC+8 | Singapore, Kuala Lumpur | | 'Asia/Tokyo' | 东京 / Tokyo | UTC+9 | Tokyo, Seoul | | 'Asia/Seoul' | 首尔 / Seoul | UTC+9 | Seoul, Pyongyang |

Pacific

| Timezone ID | Display Name | UTC Offset | Major Cities | | -------------------- | ----------------- | ------------- | -------------------- | | 'Australia/Sydney' | 悉尼 / Sydney | UTC+10/UTC+11 | Sydney, Melbourne | | 'Pacific/Auckland' | 奥克兰 / Auckland | UTC+12/UTC+13 | Auckland, Wellington |

Global

| Timezone ID | Display Name | UTC Offset | Description | | ----------- | ------------ | ---------- | -------------------------- | | 'UTC' | UTC / UTC | UTC+0 | Coordinated Universal Time |

📄 Data structure

interface ICandleViewDataPoint {
  time: number; // timestamp in seconds
  open: number;
  high: number;
  low: number;
  close: number;
  volume?: number;
}

export interface IStaticMarkData {
  time: number;
  type: string;
  data: {
    direction: string;
    text: string;
    fontSize?: number;
    textColor?: string;
    backgroundColor?: string;
    isCircular?: boolean;
    padding?: number;
  }[];
}

🌟 Core Features

📈 Supported Technical Indicators

Main Chart Indicators

  • Moving Average (MA)
  • Exponential Moving Average (EMA)
  • Bollinger Bands
  • Ichimoku Cloud
  • Donchian Channel
  • Envelope
  • Volume Weighted Average Price (VWAP)
  • Heat Map
  • Market Profile

Sub Chart Indicators

  • Relative Strength Index (RSI)
  • Moving Average Convergence Divergence (MACD)
  • Volume
  • Parabolic SAR
  • KDJ Indicator
  • Average True Range (ATR)
  • Stochastic Oscillator
  • Commodity Channel Index (CCI)
  • Bollinger Bands Width
  • Average Directional Index (ADX)
  • On Balance Volume (OBV)

🎨 Supported Drawing Tools

Basic Tools

  • Pencil, Pen, Brush, Marker Pen, Eraser
  • Line Segment, Horizontal Line, Vertical Line
  • Arrow Line, Thick Arrow Line

Channel Tools

  • Parallel Channel
  • Linear Regression Channel
  • Equidistant Channel
  • Disjoint Channel

Fibonacci Tools

  • Fibonacci Retracement
  • Fibonacci Time Zones
  • Fibonacci Arc
  • Fibonacci Circle
  • Fibonacci Spiral
  • Fibonacci Fan
  • Fibonacci Channel
  • Fibonacci Price Extension
  • Fibonacci Time Extension

Gann Tools

  • Gann Fan
  • Gann Box
  • Gann Rectangle

Pattern Tools

  • Andrew Pitchfork
  • Enhanced Andrew Pitchfork
  • Schiff Pitchfork
  • XABCD Pattern
  • Head and Shoulders
  • ABCD Pattern
  • Triangle ABCD Pattern

Elliott Wave

  • Elliott Impulse Wave
  • Elliott Corrective Wave
  • Elliott Triangle
  • Elliott Double Combination
  • Elliott Triple Combination

Geometric Shapes

  • Rectangle, Circle, Ellipse, Triangle
  • Sector, Curve, Double Curve

Annotation Tools

  • Text Annotation, Price Note
  • Bubble Box, Pin, Signpost
  • Price Label, Flag Mark
  • Image Insertion

Range Tools

  • Time Range, Price Range
  • Time-Price Range
  • Heat Map

Trading Tools

  • Long Position, Short Position
  • Mock K-line

⏰ Supported Timeframes

Second-based

  • 1s, 5s, 15s, 30s

Minute-based

  • 1m, 3m, 5m, 15m
  • 30m, 45m

Hour-based

  • 1h, 2h, 3h, 4h
  • 6h, 8h, 12h

Day-based

  • 1d, 3d

Week-based

  • 1w, 2w

Month-based

  • 1M, 3M, 6M

🌍 Supported Timezones

  • New York (America/New_York)
  • Chicago (America/Chicago)
  • Denver (America/Denver)
  • Los Angeles (America/Los_Angeles)
  • Toronto (America/Toronto)
  • London (Europe/London)
  • Paris (Europe/Paris)
  • Frankfurt (Europe/Berlin)
  • Zurich (Europe/Zurich)
  • Moscow (Europe/Moscow)
  • Dubai (Asia/Dubai)
  • Karachi (Asia/Karachi)
  • Kolkata (Asia/Kolkata)
  • Shanghai (Asia/Shanghai)
  • Hong Kong (Asia/Hong_Kong)
  • Singapore (Asia/Singapore)
  • Tokyo (Asia/Tokyo)
  • Seoul (Asia/Seoul)
  • Sydney (Australia/Sydney)
  • Auckland (Pacific/Auckland)
  • UTC

🎯 Supported Chart Types

  • Candlestick Chart
  • Hollow Candlestick Chart
  • Bar Chart (OHLC)
  • BaseLine Chart
  • Line Chart
  • Area Chart
  • Step Line Chart
  • Heikin Ashi Chart
  • Histogram Chart
  • Line Break Chart
  • Mountain Chart
  • Baseline Area Chart
  • High Low Chart
  • HLCArea Chart