Abstract image of stacked dark glass panels lit by an orange rim light

LP Factory — A Generation System for Financial Landing Pages

Design tokens → components → a single YAML brief generates financial landing pages. A fail-closed compliance gate is built in: the build itself fails if required regulatory disclosures are missing.

2026Design and implementation, solo

  • TypeScript
  • Vite
  • Design Tokens
  • Playwright
  • vitest
100·100·100measuredLighthouse performance/accessibility/SEO (rebuild, desktop/mobile)
0.2s / 0.8smeasuredLCP — vs. original 1.0s (desktop) / 5.1s (mobile)
minutesestimatedTime to produce a variant LP (from hours per page → )

Problem

Financial (insurance/banking) ad landing pages consist of static markup, a consultation form, mandatory regulatory disclosures, and separate desktop/mobile builds. In practice, each variant (e.g., a product targeted at women) is a page manually duplicated from the last, disclosure text is hardcoded into images, and accessibility, performance, and duplicate-submission prevention are easy to neglect. In fact, one reference page was found missing its privacy-policy link — exactly the kind of incident this invites.

Approach

I worked through two live financial landing pages (insurer A, digital bank B) in the order dissect → rebuild → improve.

  1. Design tokens first. Colors, typography, and spacing were extracted into tokens, and every component (hero, benefits, consultation form, info accordion, FAQ, disclosure footer) was made to consume only tokens.
  2. Brief YAML → LP-generation CLI. Variants are generated automatically from a single overrides block (default gender, product name). The dissection step proved that the original “variant” pages were, in effect, just data substitutions — this structures that fact into the pipeline.
  3. Compliance as code. The regulatory approval number, privacy policy, and disclaimer text are all data slots. If any of them is missing or expired, generation itself is blocked (fail-closed). The system catches what a person forgets.

Results (measured)

Metric Rebuild (desktop) Rebuild (mobile) Original (desktop) Original (mobile)
Lighthouse performance 100 100 97 73
Accessibility 100 100 68 80
SEO 100 100 82 82
LCP 0.2s 0.8s 1.0s 5.1s

All 10 defect categories found in the original (missing headings/alt text/labels, no duplicate-submission prevention, disclosure text hardcoded into images, and more) were resolved. A performance ≥90 / accessibility ≥95 gate is built into the pipeline to block regressions.

The very site you’re looking at right now was built on the same principle (tokens → components → performance gate) — proof that the methodology carries over.

Limitations and failure modes

  • Judging the legal adequacy of the original brand design and disclosure text is out of scope for this tool — the system only blocks missing or expired disclosures; whether the wording is legally correct remains a matter for humans and the regulatory body.
  • The production backend for the consultation form (personal-data storage) belongs to company infrastructure; this tool only covers the front-end contract.
  • The rebuild’s metrics are local measurements taken under identical content and conditions; numbers may differ in a production environment (third-party scripts, etc.).

What I learned

Performance, accessibility, and compliance aren’t kept by “let’s be careful.” Turn them into a gate, and they hold. Converting a failure into a build failure, instead of trusting human attention — that was the most valuable pattern in this project.