FlowStorm is a tracing debugger for Clojure and ClojureScript. It records execution without requiring breakpoints or code edits, then offers code stepping, value inspection, call-stack and function exploration, and exception debugging. A timeline displays execution events so you can follow how instructions from different threads interleave. Customizable, real-time visualizations and plugins provide ways to examine and interact with recordings. You can send values from the interface to the REPL with one click and analyze recordings using Clojure. The guide covers ClojureScript in browsers, Node.js, and React Native, plus remote debugging setups and integrations including Cider Storm for Emacs, VS Code, and IntelliJ IDEA. FlowStorm is free and open source, with Linux, macOS, Windows, and self-hosted availability. Listed minimum requirements are JDK 17 or later and Clojure 1.10.0 or later. Vanilla FlowStorm does not support async/await introduced in ClojureScript 1.12.145; the guide points to ClojureScriptStorm as an alternative.
Who it is for
FlowStorm suits developers working with Clojure or ClojureScript who need to inspect recorded execution, debug exceptions, or examine thread interleaving. Its documented browser, Node.js, React Native, and remote debugging setups support a range of development environments.
What is good
- Records execution without breakpoints or code changes
- Provides stepping, value inspection, and exception debugging
- Timeline shows interleaving of thread instructions
- Free and open source
- Supports plugins and real-time visualizations
What to know first
- Requires JDK 17 or later and Clojure 1.10.0 or later
- Vanilla FlowStorm lacks support for the specified async/await feature
Verdict
FlowStorm combines execution recording with stepping, inspection, visualizations, and thread-event timelines for Clojure and ClojureScript. Check its runtime requirements and the async/await limitation against your project before choosing it.
FlowStorm plans and pricing
All plansCompared on debuggers
- Free plan
- Yes
- Supported languages
- Clojure, ClojureScript
- Target platforms
- Browsers, Node.js, React Native
- Remote debugging
- Yes
- Conditional breakpoints
- Yes
- Time-travel debugging
- Yes


