Blast Radius

If I change this, what breaks?

Blast Radius draws your Rust workspace as nested circles, from packages down to the fields of a struct. Pick any symbol and everything that depends on it lights up in rings around it.

Theme

Symbol Node Graph

Your workspace, nested the way Rust nests it.

  • Everything that depends on a symbol lights up in rings around it
  • The Connections pane counts what a change touches, in symbols and files
  • Spring layout shows how code is organized; gravity shows how it's used

Thermal Vision Profiler

Color the node graph by where your program spends its time. Windows only.

  • One click builds, runs and samples your program 8,000 times a second
  • Hot functions glow, and call edges thicken with traffic
  • The Profile pane ranks the hottest, with callers and callees

Function Flow Graph

What a function calls, as an outline you unfold.

  • Callees as indented cards, from any function or from main
  • Every type in a signature is a chip you can click
  • Ride an arrow to the card at its far end

Code Health

Find what nothing uses, and what your changes touch.

  • Dead code found by reachability, chains of it included
  • Everything your uncommitted changes affect, before you push
  • A list of every symbol nothing references

Code Structure

Reshape crates and modules from the graph.

  • Rename symbols, modules and folders everywhere they're used
  • Move, promote, demote or dissolve modules and crates
  • Refuses edits that would create cycles or break the orphan rule

Workflow

Keyboard-first, in the colors you like.

  • Walk the whole tree from the keyboard while the camera follows
  • The History pane steps back through everywhere you've looked
  • 209 of the most commonly used themes

CLI

Every report runs without the window, ready for scripts and CI.

  • --diff reports what your uncommitted changes affect
  • --stats counts symbols and finds the most-referenced
  • --compare checks the native indexer against rust-analyzer
> blast_radius --diff
Workspace  C:\code\relay
Indexing   0.09s
Parse      0.01s     Ingest 0.00s

Working tree blast radius
  changed hunks      3 across 2 files
  changed symbols    4

  Changed symbols with the most dependents:
       6  net::socket::socket
       5  net::socket::Socket::connect
       2  net::session::session
       2  net::session::Session::start

Know what a change reaches before you make it.

Point Blast Radius at any Cargo workspace. It indexes in about half a second and never runs your code.

Buy on Gumroad