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

flowsurface-rs/flowsurface

Open more actions menu

Repository files navigation

Flowsurface

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

An open-source native desktop charting application for crypto markets. Supports Binance, Bybit, Hyperliquid, OKX, and MEXC.

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

Community

For feedback, questions, or for more casual conversations about the project, join our community on Discord:
https://discord.gg/RN2XAF7ZuR

License

Flowsurface is released under the GPLv3 license. Contributions to the project are shared under the same license.

About

A native desktop charting platform for crypto markets

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.