Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

sinaha81/volume_flow

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

450 Commits
450 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flowsurface

Crates.io Lint Format License: GPL v3 Made with iced

An experimental open-source desktop charting application. Supports Binance, Bybit, Hyperliquid and OKX

Flowsurface screenshot

Key Features

  • Multiple chart/panel types:
    • Heatmap (Historical DOM): Uses live trades and L2 orderbook to create a time-series heatmap chart. Supports customizable price grouping, different time aggregations, fixed or visible range volume profiles.
    • Candlestick: Traditional kline chart supporting both time-based and custom tick-based intervals.
    • Footprint: Price grouped and interval aggregated views for trades on top of a candlestick chart. Supports different clustering methods, configurable imbalance and naked-POC studies.
    • Time & Sales: Scrollable list of live trades.
    • DOM (Depth of Market) / Ladder: Displays current L2 orderbook alongside recent trade volumes on grouped price levels.
    • Comparison: Line graph for comparing multiple data sources, normalized by kline close prices on a percentage scale
  • Real-time sound effects driven by trade streams
  • Multi window/monitor support
  • Pane linking for quickly switching tickers across multiple panes
  • Persistent layouts and customizable themes with editable color palettes
Market data is received directly from exchanges' public REST APIs and WebSockets

Historical Trades on Footprint Charts:

  • By default, it captures and plots live trades in real time via WebSocket.
  • For Binance tickers, you can optionally backfill the visible time range by enabling trade fetching in the settings:
    • data.binance.vision: Fast daily bulk downloads (no intraday).
    • REST API (e.g., /fapi/v1/aggTrades): Slower, paginated intraday fetching (subject to rate limits).
    • The Binance connector can use either or both methods to retrieve historical data as needed.
  • Fetching trades for Bybit/Hyperliquid is not supported, as both lack a suitable REST API. OKX is WIP.

Installation

Method 1: Prebuilt Binaries

Standalone executables are available for Windows, macOS, and Linux on the Releases page.

Having trouble running the file? (Permission/Security warnings)

Since these binaries are currently unsigned they might get flagged.

  • Windows: If you see a "Windows protected your PC" pop-up, click More info -> Run anyway.
  • macOS: If you see "Developer cannot be verified", control-click (right-click) the app and select Open, or go to System Settings > Privacy & Security to allow it.

Method 2: Build from Source

Requirements

  • Rust toolchain
  • Git version control system
  • System dependencies:
    • Linux:
      • Debian/Ubuntu: sudo apt install build-essential pkg-config libasound2-dev
      • Arch: sudo pacman -S base-devel alsa-lib
      • Fedora: sudo dnf install gcc make alsa-lib-devel
    • macOS: Install Xcode Command Line Tools: xcode-select --install
    • Windows: No additional dependencies required

Option A: cargo install

# Install latest globally
cargo install --git https://github.com/flowsurface-rs/flowsurface flowsurface

# Run
flowsurface

Option B: Cloning the repo

# Clone the repository
git clone https://github.com/flowsurface-rs/flowsurface

cd flowsurface

# Build and run
cargo build --release
cargo run --release

Credits and thanks to

  • Kraken Desktop (formerly Cryptowatch), the main inspiration that sparked this project
  • Halloy, an excellent open-source reference for the foundational code design and the project architecture
  • And of course, iced, the GUI library that makes all of this possible

About

A native desktop charting platform for crypto markets

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Rust 98.6%
  • Makefile 1.2%
  • Shell 0.2%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.