High-performance charting engine built with Rust and Tauri
Project description
🚀 LWC Chart Engine
A high-performance charting engine built with Rust, Tauri, and Lightweight Charts. This library provides a seamless, non-blocking Python API for streaming and visualizing large datasets via Polars.
💎 Features
- High Performance: Native Rust backend for low-latency data streaming and stateful $O(1)$ real-time scaling.
- Embedded UI: Zero-config, minified frontend assets bundled directly into the distribution.
- 20+ Technical Indicators: SIMD-optimized calculations using Polars for production-grade speed.
- Interactive Tools: Built-in support for Trendlines, Fibonacci, Boxes, and Position management.
- Python Integration: First-class support for Polars DataFrames and zero-copy Arrow memory mapping.
📈 Technical Indicators (v0.9.8)
LWC Chart Engine comes with a curated suite of 20 high-performance indicators, all calculated on the Rust side to keep your Python main thread responsive.
🌊 Trend & Overlays
- SMA: Simple Moving Average
- EMA: Exponential Moving Average
- WMA: Weighted Moving Average
- HMA: Hull Moving Average
- DEMA: Double Exponential Moving Average
- TEMA: Triple Exponential Moving Average
- VWAP: Volume-Weighted Average Price
- Bollinger Bands: Volatility-based price envelopes
- Keltner Channels: ATR-based trend envelopes
- Donchian Channels: Min/Max range channels
⚡ Oscillators & Momentum (Dedicated Panes)
- RSI: Relative Strength Index
- MACD: Moving Average Convergence Divergence (Line, Signal, Histogram)
- Stochastic: K and D Oscillator
- CCI: Commodity Channel Index
- Williams %R: High-Low range oscillator
- MFI: Money Flow Index
- ROC: Rate of Change
📊 Volatility & Volume
- ATR: Average True Range
- OBV: On-Balance Volume
- ADL: Accumulation/Distribution Line
🚀 Quick Start
📦 Installation
If you have a pre-built wheel (check the wheels/ directory):
uv pip install wheels/chart_engine-0.9.8-cp38-abi3-manylinux_2_39_x86_64.whl
📊 Examples
Dive into the examples/ directory:
- static_charts.py: Rendering historical OHLC data.
- live_chart_emulation.py: Real-time streaming and auto-scrolling.
- indicator_test.py: Comprehensive technical indicator validation.
- multi_chart_layouts.py: Complex multi-pane workspaces.
- paper_trading.py: Integrated trading simulations.
🏗 Prerequisites
To build from source, ensure you have:
- Rust: Latest stable.
- Python: 3.9+.
- Node.js: For asset minification.
- Maturin:
pip install maturin.
🐧 Linux Runtime Dependencies
sudo apt update && sudo apt install -y libgtk-3-0 libwebkit2gtk-4.1-0 libjavascriptcoregtk-4.1-0 libayatana-appindicator3-1 librsvg2-2
maintained by amit vaidya
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chart_engine-0.9.8-cp38-abi3-win_amd64.whl.
File metadata
- Download URL: chart_engine-0.9.8-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 7.3 MB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1388da053fbb6b3688558dbc742ef3ec877e8115a83e850e27fd980e96e8ec5
|
|
| MD5 |
8671d7d4dbe7a248c2fe056a387573b2
|
|
| BLAKE2b-256 |
df9e1f771feb73d8266de14ff1092aa9736da7de727974947cf563f1ed341a10
|
Provenance
The following attestation bundles were made for chart_engine-0.9.8-cp38-abi3-win_amd64.whl:
Publisher:
build_wheels.yml on armeya25/lwc_chart_engine
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
chart_engine-0.9.8-cp38-abi3-win_amd64.whl -
Subject digest:
a1388da053fbb6b3688558dbc742ef3ec877e8115a83e850e27fd980e96e8ec5 - Sigstore transparency entry: 1283078642
- Sigstore integration time:
-
Permalink:
armeya25/lwc_chart_engine@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Branch / Tag:
refs/tags/v0.9.8 - Owner: https://github.com/armeya25
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build_wheels.yml@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Trigger Event:
push
-
Statement type:
File details
Details for the file chart_engine-0.9.8-cp38-abi3-manylinux_2_39_x86_64.whl.
File metadata
- Download URL: chart_engine-0.9.8-cp38-abi3-manylinux_2_39_x86_64.whl
- Upload date:
- Size: 84.5 MB
- Tags: CPython 3.8+, manylinux: glibc 2.39+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
009a216309d6533de31c411c9dd56e76a4051444b33a4bc823e29cdc2fd64760
|
|
| MD5 |
e087ddc6a11edd13be30e0ca636216f0
|
|
| BLAKE2b-256 |
15b613119af5fbfb75bc69cd0fc1b1f321f7e1120a89383b7d0dab3ac820c1aa
|
Provenance
The following attestation bundles were made for chart_engine-0.9.8-cp38-abi3-manylinux_2_39_x86_64.whl:
Publisher:
build_wheels.yml on armeya25/lwc_chart_engine
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
chart_engine-0.9.8-cp38-abi3-manylinux_2_39_x86_64.whl -
Subject digest:
009a216309d6533de31c411c9dd56e76a4051444b33a4bc823e29cdc2fd64760 - Sigstore transparency entry: 1283078541
- Sigstore integration time:
-
Permalink:
armeya25/lwc_chart_engine@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Branch / Tag:
refs/tags/v0.9.8 - Owner: https://github.com/armeya25
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build_wheels.yml@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Trigger Event:
push
-
Statement type:
File details
Details for the file chart_engine-0.9.8-cp38-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: chart_engine-0.9.8-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 9.5 MB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41d88206a380bf004bf859ad9076199c4d070098be4ce6bf11c27343acc90507
|
|
| MD5 |
cac43df7cb4442a447497e2ea914fae1
|
|
| BLAKE2b-256 |
23615cb887527aa5cde4cbcbac7257e0f651f62599281a303b4d4d3c87ac0f86
|
Provenance
The following attestation bundles were made for chart_engine-0.9.8-cp38-abi3-macosx_11_0_arm64.whl:
Publisher:
build_wheels.yml on armeya25/lwc_chart_engine
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
chart_engine-0.9.8-cp38-abi3-macosx_11_0_arm64.whl -
Subject digest:
41d88206a380bf004bf859ad9076199c4d070098be4ce6bf11c27343acc90507 - Sigstore transparency entry: 1283078591
- Sigstore integration time:
-
Permalink:
armeya25/lwc_chart_engine@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Branch / Tag:
refs/tags/v0.9.8 - Owner: https://github.com/armeya25
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build_wheels.yml@4e5ddb92f7cd94f097d84508948a8c96fc041f1f -
Trigger Event:
push
-
Statement type: