Python MIT

flameshow

A terminal Flamegraph viewer.

L

laixintao

Dernière activité 21 sept. 2026
laixintao/flameshow

1,1 k

étoiles

22

forks

7

issues ouvertes

flamegraphgolangperfperformance-analysispprofprofiling

Ce README est souvent en anglais.

Flameshow

tests codecov PyPI PyPI - Python Version PyPI - Downloads Code style: black

Flameshow is a terminal Flamegraph viewer.

Features

  • Renders Flamegraphs in your terminal
  • Supports zooming in and displaying percentages
  • Keyboard input is prioritized
  • All operations can also be performed using the mouse.
  • Can switch to different sample types

Install

Flameshow is written in pure Python, so you can install via pip:

pip install flameshow

But you can also run it through nix:

nix run github:laixintao/flameshow
# Or if you want to install it imperatively:
nix profile install github:laixintao/flameshow

Usage

View golang's goroutine dump:

$ curl http://localhost:9100/debug/pprof/goroutine -o goroutine.out
$ flameshow goroutine.out

After entering the TUI, the available actions are listed on Footer:

  • q for quit
  • h j k l or ← ↓ ↑ → for moving around, and Enter for zoom in, then Esc for zoom out.
  • You can also use a mouse, hover on a span will show it details, and click will zoom it.

Flamegraph TUI

This project is built on flamegraph-textual.

The flamegraph renderer is available as a separate package:

pip install flamegraph-textual

Supported Formats

As far as I know, there is no standard specification for profiles. Different languages or tools might generate varying profile formats. I'm actively working on supporting more formats. Admittedly, I might not be familiar with every tool and its specific format. So, if you'd like Flameshow to integrate with a tool you love, please feel free to reach out and submit an issue.

Development

If you want to dive into the code and make some changes, start with:

git clone git@github.com:laixintao/flameshow.git
cd flameshow
pip install poetry
poetry install

This project is proudly powered by textual.

Projets similaires

pprof is a tool for visualization and analysis of profiling data

Goperformanceperformance-analysispprof
Ggoogle
9,3 k étoiles672

🔬 A fast, interactive web-based viewer for performance profiles.

TypeScriptflamegraphflamegraphsperformance-profiling
Jjlfwong
6,8 k étoiles320

Easy flamegraphs for Rust projects and everything else, without Perl or pipes <3

Rustflamegraphsperfprofiling
Fflamegraph-rs
6 k étoiles194