Reveal:
Read Eval Visualize Loop for Clojure

Overview
Reveal is a Clojure-oriented data inspection toolbox that aims to remove the barrier between you and objects in your VM.
The goals of Reveal are:
- to empower you to hold a value in your hand — meaning you can look at it from different angles, pick it apart and analyze different pieces of the data just by pointing at them;
- to complement REPL-aided development — providing both interactive output panes for the REPL and tools to use at the REPL;
- to get the most from being in-process — in addition to working with remote processes.
There are 2 versions of Reveal:
- Reveal Free: FOSS, sponsored on GitHub;
- Reveal Pro: $9.99 per month, start a free trial here. For residents and citizens of Ukraine Reveal Pro is free forever — use “PUTINKHUILO” promocode during checkout.
Try it out
To try Reveal Free:
- Start a Reveal Free REPL:
clj \ -Sdeps '{:deps {vlaaad/reveal {:mvn/version "1.3.312"}}}' \ -X vlaaad.reveal/repl - Evaluate some forms and inspect the results.
To try Reveal Pro:
- Start a Reveal Pro REPL:
clj \ -Sdeps '{:deps {dev.vlaaad/reveal-pro {:mvn/version "1.3.408"}}}' \ -X vlaaad.reveal/repl - Start a free trial here;
- Paste the license key from confirmation email into a license input field in the Reveal Pro window;
- Evaluate some forms and inspect the results.
Features
Free
Eval on selection
Inspector popup
Vega(-Lite) visualizations
Object inspector
Test runner
REPL, pREPL, nREPL
Look and feel customization
Tap support
URL and file browsers
Docs and sources
Ref watchers
Charts
Table view
Memory tree
Graphviz viewer
Pro
Everything in Free, plus:
SQL DB explorer
Forms
System watchers
JSON schema and Vega(-Lite) forms
File system navigation
Resources sticker
Learn Reveal
Here you can find useful high-level information about Reveal:
Documentation
Lower-level guides:
- setup Reveal in your project;
- customize Reveal;
- use Reveal at the REPL;
- extend Reveal for your project.
Reveal in media
I gave 3 talks about Reveal:
- Reclojure 2020, 24 minutes;
- Reclojure 2021 data science special: visual tools, 10 minutes;
- Scicloj meeting, 2 hours including Q&A, cljfx and live demo.
Other videos about Reveal:
- Practicalli demo, 5 minutes;
- REPL Driven Development, Clojure’s Superpower by Sean Corfield (1h15m), not about Reveal per se, but uses Reveal extensively.
I also talked about Reveal on defn podcast (1h30m).
Various written setup instructions using Reveal:
- Practicalli page describes Reveal setup for CLI, nrepl editors, emacs (using cider) and rebel-readline;
- Calva page describes vscode setup with Calva extension (using both tools-deps and leiningen examples);
- my blog post describes various Reveal socket REPL setups that talk with remote processes.
Closing thoughts
If repl is a window to a running program, then Reveal is an open door — and you are welcome to come in. I get a lot of leverage from the ability to inspect any object I see, and I hope you will find Reveal useful too.
If you do, please consider supporting my work either by sponsoring the development of the free version or by buying the subscription for Pro version.