AboutBlogPricing
← Back to Articles
March 2, 2026

From AI Slop to Executive Reports: Announcing the All-New, Zero-Trust AI Author

By Moris Khoudari · Founder of UtilitlyLast updated July 9, 2026

To convert raw AI text into print-ready PDF reports without layout shift, you can use the newly updated client-side AI Author engine on Utilitly.com.

A clean, modern, futuristic user interface dashboard showing raw messy markdown text magically transforming into a polished, professional, print-ready PDF business document

We kept crashing our own tool during testing, and it taught us something worth shipping: the bottleneck in AI-generated reports was never the writing, it was three embedded logos. That's the story behind this release. Artificial Intelligence has fundamentally broken the speed of writing — but it hasn't fixed the nightmare of formatting, and it turns out the formatting problem and the image-memory problem are the same problem.

Whether you are a founder compiling a project proposal, a freelancer drafting a legal contract, or a student assembling a research report, the modern workflow remains frustratingly manual. You prompt ChatGPT, Claude, or Gemini; you get back brilliant, raw text; and then you spend the next two hours fighting with Microsoft Word or Google Docs margins, broken tables, and shifting bullet points.

The Engineering Problem: Markdown to PDF Coordinate Mapping

Building a client-side document generator requires bridging two incompatible architectures. Markdown — as defined by the CommonMark specification most AI models default to when asked for formatted text — is a fluid, structural syntax designed for reflowable HTML. A PDF is a rigid, absolute-positioned vector grid. You cannot simply "paste" markdown into a PDF binary. Every character, heading, and table cell must be mathematically mapped to precise X/Y coordinates on a 210×297mm ISO 216 A4 canvas.

Most "AI document builders" dodge this complexity by sending your text to a server, using a headless browser (like Puppeteer) to render a webpage, and printing that page to a PDF via the cloud. This is slow, expensive, and fundamentally insecure. Utilitly's AI Author executes the entire layout calculation locally via a custom JavaScript-to-jsPDF parser pipeline.

[The Local Coordinate Mapping Pipeline]

[Raw Markdown] ──► [ AST Parser (marked.js) ]
                             │
                             ▼
                 [ Virtual Block Tree ]
                 - Evaluates font metrics (width/height)
                 - Computes text wrapping breaks at 180mm width
                 - Calculates vertical Y-offsets per block
                             │
                             ▼
                 [ jsPDF Rendering Engine ]
                 - ctx.text("Executive Summary", x:15, y:20)
                 - ctx.rect(x:15, y:25, w:180, h:0.5)
                 - ctx.text("Project data...", x:15, y:35)
                             │
                             ▼
                 [ ArrayBuffer (PDF Binary) ]
      

Why Client-Side Image Processing Crashes the Browser (And How We Fixed It)

Text coordinates are computationally cheap. High-resolution images are not. The failure point of most local PDF generators is the browser's heap memory limit. This is not a hypothetical: during internal testing, dropping three 12MB, 300-DPI corporate logos into a single report layout reliably triggered an out-of-memory (OOM) tab crash in Chrome — the exact failure this release was built to fix, not a theoretical edge case we reasoned about in advance.

To prevent heap exhaustion, AI Author completely bypasses the main thread RAM for asset storage. When an image is uploaded, it is immediately downsampled via a hidden Canvas API instance to the exact dimensions required for the PDF layout (e.g., a 4000px wide image dropped into a 50mm wide layout slot is downsampled to 600px). The resulting optimized Blob is then committed to the browser's local IndexedDB store instead of staying in JavaScript heap memory.

[Image Drop] ──► [ Canvas Downsample ] ──► [ IndexedDB Storage ]
                                                  │
                                                  ▼
[ jsPDF Render Cycle ] ◄── (Pull Blob by ID) ◄────┘
      

During the final PDF compilation, the jsPDF engine retrieves the optimized image Blobs from IndexedDB asynchronously, writes them directly to the PDF binary buffer, and flushes the memory. This architecture allows AI Author to compile 50-page, image-heavy executive reports on a standard laptop without exceeding 150MB of active RAM usage.

Zero-Trust Execution for Corporate Data

If you are generating board reports, financial projections, or legal contracts from AI outputs, the structural integrity of your toolchain is paramount. Uploading strategic corporate data to an unverified third-party rendering server is an unnecessary operational risk — and, per the OOM issue above, it was also the thing that was actually breaking on us, not just a theoretical concern.

Because the AST parsing, coordinate mapping, and IndexedDB caching execute entirely within your local browser sandbox, your proprietary data never touches a network socket. Navigate to the AI Author Tool on Utilitly.com and compile your next report using this updated engine.

Frequently Asked Questions

Which AI tools does AI Author work with — ChatGPT, Claude, Gemini?

Any of them. AI Author doesn't call out to a specific AI provider; it parses whatever CommonMark-flavored markdown text you paste in, so output from ChatGPT, Claude, Gemini, or any other model that returns markdown-formatted text works the same way.

Is there a page or image limit for generated reports?

There's no hard-coded page cap. The practical ceiling is your device's available RAM for the JavaScript heap and IndexedDB storage — the IndexedDB image caching described above is specifically what lets AI Author compile 50-page, image-heavy reports on a standard laptop without exceeding roughly 150MB of active memory usage.

Can I edit the layout after the PDF is generated?

AI Author generates the final PDF directly from your markdown source, so the intended workflow is to edit the markdown and regenerate rather than edit the compiled PDF's vector layout after the fact. This keeps the coordinate mapping consistent instead of drifting out of sync with the source text.

Does AI Author send my report's content to a server to render the PDF?

No. Unlike tools that use a headless browser (e.g., Puppeteer) on a server to render and print a webpage to PDF, AI Author runs the entire AST parsing, coordinate mapping, and jsPDF compilation locally in your browser. Your markdown text and any embedded images never leave your machine during generation.

Secure AI PDF Writer & Document Generator | Utilitly.com | Utilitly.com