Nodes/arkennemasis Nodes/arkennemasis Board Preview (render the excalidraw matrix)
ComfyUI Node

arkennemasis Board Preview (render the excalidraw matrix)

Turn the Excalidraw client board into a PNG you can actually look at

By Hishamahmer·Created 2 months ago·Updated 8 days ago· 9
arkennemasis Board Preview (render the excalidraw matrix)
    • image
    • report
    • width
    • height
    board_path
    scale1.00
    background#FFFFFF
    margin40
    save_pngtrue

    ArkBoardPreview solves a small but very real annoyance at the end of the arkennemasis Variation pipeline: the whole variation matrix gets handed to the client as an .excalidraw board, and you can't look at an Excalidraw file without opening Excalidraw. This node renders that board to an image so the entire matrix can be checked right inside ComfyUI - wire the output into a Preview Image, or into any node that takes an image to save or send.

    It's the visual counterpart to the Review Board node: Review Board writes the .excalidraw matrix (with approve/reject buttons wired into the job records), and this node is how you eyeball that file without leaving the canvas.

    The mechanism

    It reads the .excalidraw file (which is JSON), renders its elements - the embedded thumbnails, the rectangles, the labels - onto a canvas at a chosen scale, and hands back an IMAGE tensor plus a report. One design decision is worth calling out because it explains the scale default: the whole point of this picture is that it is the matrix in one file, so the default scale of 1.0 renders every embedded image at its full resolution. Lower it only for a quick look. The tooltip's warning is the kind of thing only a pack author who's been burned writes: raise it past 1.0 and you're upscaling thumbnails, not gaining detail. You won't recover resolution from a contact sheet no matter how big you make the canvas.

    The inputs that matter

    • board_path (required) - the .excalidraw file, straight from Review Board's excalidraw_path output. It's an output node, so leaving this unwired fails with a clear message: the path is empty when the run produced no delivered masters.
    • scale - board units to pixels, default 1.0.
    • background - canvas colour, default #FFFFFF.
    • margin - padding in pixels, default 40.
    • save_png - default on: also writes matrix.png beside the .excalidraw file. That's the version you email a client who doesn't have Excalidraw and never will.

    The report output is genuinely useful: it tells you how many images, rectangles and labels were drawn, and how many elements the renderer skipped (this renderer doesn't draw every Excalidraw shape type, and the report admits it). If your board has exotic elements, the skip count tells you before the client does. width and height come along for filename or layout use.

    Installing

    It's part of the comfyui-arkennemasis pack:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Hishamahmer/comfyui-arkennemasis
    pip install replicate httpx
    

    restart, and it's under arkennemasis/Variation. No models, no API keys - it's JSON parsing plus PIL drawing, so it costs nothing to run and re-renders fast.

    The one thing to know: this node only looks as good as the board it's given, so it's not a substitute for opening the real file when you need to click approve/reject - that's Review Board's job. Use Board Preview for the quick check and for producing the client-safe PNG, and keep the interactive review in the board itself.

    Categoryarkennemasis/Variation

    Inputs (5)

    NameTypeDefaultDescription
    board_pathSTRINGThe .excalidraw file, from Review Board.
    scaleoptFLOAT1.000.05–4Board units to pixels. 1.0 renders every image at its full embedded resolution - the right default, since this picture is the whole matrix in one file. Lower it only for a quick look; raise it past 1.0 and you are upscaling thumbnails, not gaining detail.
    backgroundoptSTRING#FFFFFF
    marginoptINT400–400
    save_pngoptBOOLEANtrueAlso write matrix.png beside the .excalidraw file — the version you can email to a client without them needing Excalidraw at all.

    Outputs (4)

    NameTypeDescription
    imageIMAGE
    reportSTRING
    widthINT
    heightINT