Ultimate Grid Dashboard (Viewer)
500 test images, one infinite canvas — the grid viewer that makes A/B testing readable
Generating a grid is easy. Reading a grid is the hard part. If UltimateSamplerGrid is the engine of this pack, UltimateGridDashboard is the windshield - an interactive, zoomable, filterable canvas that turns a few hundred near-identical test images into something you can actually scan, star, reject, and revise without ever touching the graph again.
It's an output node in the truest sense: it has no outputs, it just renders. Wire the sampler's dashboard_html output into its input and it displays the results live, updating as images finish if you've set a small flush_batch_every. Or leave it unwired and it acts as a standalone viewer, loading any saved session by name from disk. Both modes are the same node - the "revise and compare without leaving the interface" workflow the author sells the suite on lives here.
How it works
The dashboard is a single-page web app the node builds from its own HTML template and ships to your browser. It reads the session's manifest.json (saved by the generator under ComfyUI/output/benchmarks/{session_name}/) and renders images on an infinite canvas with pan/zoom and virtual scrolling - the pack claims smooth scrolling through 5000+ images, and the lazy-loading approach is what makes that believable rather than aspirational.
The useful part is the curation system. Hover a card and you get three buttons:
- ✕ rejects the image - it's hidden and its config lands in the red bar.
- ⭐ favorites it - the config gets collected in the gold bar.
- REVISE opens a modal where you can tweak CFG, steps, or sampler for just that image and re-queue it on the spot, with a side-scrolling reel of other images that share its seed for true A/B.
At the bottom are three JSON bars - accepted (green), favorites (gold), rejected (red). They hold the configs of whatever's in each category, so after a run you click the green bar, copy the JSON, and paste it back into the generator's configs_json as your refined shortlist. That feedback loop - test, curate, export, re-run - is the actual point of the suite, and it's smooth enough to feel like an IDE rather than a hack.
The inputs that matter
session_name(required) - which saved session to show when you're in viewer mode. It should match a folder underComfyUI/output/benchmarks/. When connected to the generator this gets overwritten automatically with the active session.dashboard_html(optional) - connect the generator'sdashboard_htmloutput here for live mode. The node even rewrites the embedded node ID so the live messaging targets this dashboard instead of the sampler.
Installing
Same install as the rest of the pack - Manager search for ComfyUI-Ultimate-Auto-Sampler-Config-Grid-Testing-Suite, or:
cd ComfyUI/custom_nodes/
git clone https://github.com/JasonHoku/ComfyUI-Ultimate-Auto-Sampler-Config-Grid-Testing-Suite.git
Restart, then drag in the included SamplrConfig-Basic-Workflow.json if you want all three nodes pre-wired. No extra dependencies, no models to fetch.
Common snags
- Dashboard not auto-loading - check the
dashboard_htmlwire is actually connected from the generator; the README's fix is to use the reload/show-session button. - Cards not appearing or you can't scroll/pan - click inside the canvas area first to give it focus (right-click also works), then drag or wheel.
- "Session not found" - the
session_namehas to match a folder underComfyUI/output/benchmarks/; it's case-sensitive on Linux/macOS. - Slow with huge grids - close other tabs and make sure browser zoom is at 100%; the virtual scroll is doing the heavy lifting.
One take: the dashboard is the suite's best feature and its least likely thing to impress you in a screenshot. It's a grid of images - of course. The magic is the workflow around it: filter by model or sampler with Shift+Click to isolate, sort by generation time to spot the fast losers, and let the JSON bars do the curating. Give it one real 100-image run before you judge it.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| session_name | STRING | my_session | — |
| dashboard_htmlopt | STRING | — |
Outputs (0)
No outputs