Blocks, not code
Headings, rich text, score ring, bars, spectrum, radar, band text, top fixes, loops, tables, images and buttons. Drag to reorder.
Rule-based · no AI needed · private links
Design a template once from blocks: score rings, bar charts, band text, content grids and insight libraries. Every reader gets the paragraphs that fit their numbers, on a private link that prints to a clean PDF.
Headings, rich text, score ring, bars, spectrum, radar, band text, top fixes, loops, tables, images and buttons. Drag to reorder.
Pick a field, an operator and a value; group with AND/OR. The preview tells you why each block is shown or hidden.
Areas × bands: the right finding and fix for each score. Empty cells are flagged before you publish.
Mark blocks as paid. Locked reports show a teaser; unlocked ones show everything.
Paste a JSON sample or a CSV header and the field list builds itself. Batch from CSV or call the API.
Every publish is frozen, every report remembers its version, and rich text is sanitised.
POST /api/v1/render.