ComfyUI Node

Ultimate Grid Dashboard (Viewer)

500 test images, one infinite canvas — the grid viewer that makes A/B testing readable

By JasonHoku·Created 8 months ago·Updated about a month ago· 101
Ultimate Grid Dashboard (Viewer)
      session_namemy_session
      dashboard_html

      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 under ComfyUI/output/benchmarks/. When connected to the generator this gets overwritten automatically with the active session.
      • dashboard_html (optional) - connect the generator's dashboard_html output 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_html wire 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_name has to match a folder under ComfyUI/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.

      Categorysampling/testing

      Inputs (2)

      NameTypeDefaultDescription
      session_nameSTRINGmy_session
      dashboard_htmloptSTRING

      Outputs (0)

      No outputs