How We Turned 50 State Compliance Documents Into Published Web Pages (In 30 Seconds Each)

Mike Kerchenski
Mike Kerchenski ·
How We Turned 50 State Compliance Documents Into Published Web Pages (In 30 Seconds Each)

We built an AI feature that turns uploaded PDFs into full web pages in under 30 seconds. Here's how it works — and why it matters for any business sitting on a pile of documents.

Our client had a problem that's more common than it sounds: they needed published web pages for every US state, and each one had its own stack of legal PDFs to work from.

Advanced Training Products runs a workplace substance impairment assessment platform used by employers and evaluators across the country. Part of their value is keeping clients current on state-specific workplace drug testing laws — which vary enormously. New Mexico updated its employer guidance. Michigan changed its testing thresholds. Delaware has specific windows for different substance classes. All of it lives in PDFs on state government websites.

Before we built their current system, creating a state-specific page meant:

  1. Download the state's official PDF guidance document
  2. Read it (these are legal documents — not light reading)
  3. Extract the employer-relevant information
  4. Write web-ready content that's accurate but not terrifying
  5. Format it in markdown
  6. Review and publish

Two to four hours per state. Times 50 states. That's a full work week for a single content pass — and the laws change.

What We Built

We built an AI-powered document processor directly into their content management interface. Not a separate AI tool to log into. Not a workflow that passes through three different apps. The entire thing happens inside the admin panel they already use every day.

The workflow is exactly three steps:

  1. Upload the PDF
  2. Click the ✨ button
  3. Review the draft and publish

The AI reads the document and returns a page title, a summary, and full markdown content — formatted for web, written for employers, ready for review. Generation takes 15-30 seconds.

How It Works

The feature lives inside a Blazor component called HFileInput, part of the shared framework behind all our client apps. When a file upload field has EnableAIGenerate turned on, a magic wand button appears automatically after any PDF is uploaded.

Clicking it opens a generation dialog where the admin chooses what to generate: title, summary, URL slug, images, or full page content — each independently toggleable. Then they click Generate.

On the backend, the AI service retrieves the PDF from storage, analyzes it with a structured prompt, and returns structured output. The result lands directly in the editable form fields — not a separate preview, not a copy-paste step. It's in the form, ready to save or adjust.

The output is plain markdown, not HTML — the same format the team already uses to write and edit content. No code knowledge required at any step.

Crucially, the AI doesn't just generate text. It also finds and extracts a primary image from the document — a diagram, chart, or official graphic embedded in the PDF — and adds it to the page automatically. Combined with the AI-generated title, summary, and URL slug, every field Google uses to understand and rank a page is populated in a single generation. A complete SEO-ready page package from one PDF upload.

We also built budget tracking into the dialog. Admins see their monthly AI usage as a progress bar, with a warning at 75% and a soft block at the monthly limit. For a small business managing AI costs, you shouldn't need to check a separate dashboard — the information is right there when you're using the feature.

AI document generation is included in every subscription: up to 10 documents per month on the base $250/month plan, and up to 100 per month on the $500/month plan. For most businesses — a product catalog refresh, a quarterly compliance update, a batch of inspection reports — 10 documents covers the majority of use cases. ATP's 50-state content library fits comfortably in the higher tier, with capacity left over for ongoing law changes throughout the year.

Upload PDF → Click ✨ → AI analyzes (15–30s) → Review fields → Save

That's the entire workflow. From document to complete, SEO-ready draft without leaving the admin panel.

The Numbers

Before After
Time per state page 2–4 hours ~10 minutes
Steps Read PDF → notes → write → format → review → publish Upload → generate → review → publish
AI involvement None Drafts title, summary, slug, primary image, and full content
Human role Author Editor

Across 50 states, that's the difference between 100–200 hours of content work and a few afternoon review sessions. The AI doesn't eliminate the review step — someone still reads the output and checks it against the source PDF. But "review and lightly edit a well-structured draft" is a fundamentally different job than "write from scratch while consulting a legal document." One takes 10 minutes. The other takes most of a day.

The Pattern Generalizes

We didn't build this as a one-off feature just for ATP. The EnableAIGenerate parameter is available on any file upload field in any app we build — because the PDF-to-content problem appears constantly:

  • Legal and compliance businesses — turning regulatory PDFs into readable guidance pages
  • Wholesale distributors — generating product listings from supplier spec sheets
  • Insurance and finance — extracting structured information from policy documents
  • Training companies — converting course material PDFs into web-ready lesson content
  • Field service businesses — turning inspection reports into client-facing summaries
  • Real estate — generating property listings from appraisal documents

Any business that receives information in PDF form and republishes it somewhere else is doing this manually right now. That's the opportunity.

This is also why we build on a shared framework across clients — when we solve something for one business, it becomes a reusable building block for the next one. The EZ Electronics case study was the first time we built a multi-organization inventory system; now that pattern is available to any wholesale client. The AI document processor for ATP is the same idea.

The Distinction That Matters

Most conversations about "AI for small business" focus on AI that builds things for you: AI that writes your website copy, generates your social posts, or answers your emails. Those are useful, but they're separate tools your team has to remember to use — and often doesn't.

What we built is different. The AI is embedded in the workflow your team already runs. The admin who manages ATP's state content doesn't think about "using AI" — they upload a PDF and click a button. The intelligence is invisible. The time savings are not.

This is the direction we're building across all our client apps: AI embedded in existing workflows rather than layered on top as another tool to manage. We wrote more about this philosophy in our proactive monitoring post — the same idea applies there. Your subscription shouldn't just buy you software. It should buy you a developer who's actively making the software smarter.

If you're spending hours manually transferring information from PDFs into your systems — or watching a staff member do it — that's a solvable problem. See what that looks like across different industries, or compare how custom-built compares to off-the-shelf tools.

The starting question isn't "can AI help?" It almost certainly can. The question is whether it's built into your business or sitting in a browser tab that your team half-uses.

Let's figure out which one makes sense for you.

Need help with this?

We build custom business software for $250/month with no setup fees. If this article resonated, let's talk about your situation.

Mike Kerchenski

Mike Kerchenski

Experienced full-stack developer with over 25 years of expertise in building web and mobile applications. Proficient in ASP.NET, .NET Framework, ASP.NET MVC, Web API, ASP.NET Core, and Azure. Skilled in database design, database programming, IIS, deployment, source control, dev ops, and front-end development. Passionate about the art and science of programming, constantly learning, and adhering to best practices such as source control, unit testing, and SOLID principles.