Recording of the visual regression run on schemagen.io · SchemaGen — register + app walkthrough.

In this video· click a step to jump to it

S
Passed ✓

Test recording

SchemaGen — register + app walkthrough

30,151 ms · 0 pixels changed · matches baseline

We built this regression test for schemagen.io — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against schemagen.io. Claim it into your own workspace and re-run it on every deploy — free.

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  // Demo identity (fresh per run, traceable to Viktor's inbox via plus-addressing).
  const DEMO_EMAIL = '[email protected]'•••'Lastest-Demo-202605131108!';
  const DEMO_NAME = 'Lastest Demo';

  const shot = (n, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  const settle = () => page.waitForLoadState('networkidle').catch(() => {});

  // ─── Public phase ────────────────────────────────────────────────────────
  stepLogger.log('Scenario 1: Homepage');
  await page.goto(baseUrl, { waitUntil: 'domcontentloaded' });
  const accept = page.getByRole('button', { name: /accept|allow|got it|ok$|save preferences/i });
+119 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
✓
Text
—
DOM
✓
Network
+40 −56
Console
✓
A11y
—
Perf
—
URL
✓
Variables
—
Full report
Log in →
0
Diff px
30s
Duration
—
Accessible

Notes from the demo run

AI-generated

SchemaGen is a schema.org / structured data generator with an audit tool layered on top, targeted at agency-adjacent SEO buyers (the sign-in placeholder is '[email protected]', not '[email protected]'). The brand is teal/emerald on dark theme, with a stylized neural-network logomark. Public surface is dense: dedicated routes for Audit, Pricing, Guide, Generator/<schema-type>, Contact, and Login, plus a Saved/Dashboard area gated behind auth. The /generator route family is where the product's depth lives, with a route per schema type (HowToItem walked here); each renders a form-first UI for structured data construction. Authentication is magic-link only (Email Magic Link plus Continue with Google), which is a deliberate trust-building choice for an SEO tool but a structural blocker for programmatic baselining of any authenticated page.

Highlights
  • Audit-as-acquisition surface
    The top-right CTA on the marketing site is 'Audit My Site', not 'Sign Up'. Lets unverified visitors get value before any account creation, then converts them into Sign In via the Saved navigation entry once they want to keep results. Strong product-led top-of-funnel.
  • Generator route per schema type
    /generator/howtoitem renders a HowToItem-specific structured data form; the route shape implies the same per-type forms exist for Article, Product, FAQPage, and others. Discoverable URL structure that doubles as long-tail SEO landing pages for the product itself.
  • Sign-in copy targets the right buyer
    Email placeholder reads '[email protected]' rather than '[email protected]'. Small detail that signals 'we know who buys this'; SEO agencies are the obvious primary audience.
  • Free-to-start under the heading
    'Free to start, no credit card required' sits in the sign-in subheading, not buried on /pricing. Lowers the perceived friction of clicking the Continue-with-Google button.
Friction points
  • Magic-link-only auth blocks automation
    The Sign In / Sign Up flow has only two paths: Google OAuth and Email Magic Link. There is no password-based registration. Programmatic baselining of the authenticated /dashboard, /audit-results, /generator/<type> surfaces is therefore impossible without manually clicking a verification link in the inbox. For human users this is excellent (no password to forget); for partner integrations and automated tooling, it's a hard wall.
  • Single accent color works against route hierarchy
    Every clickable element across the site uses the same teal accent: top nav, hero CTAs, footer links, sign-in button. Without secondary/tertiary tonal variation, the eye flattens the visual hierarchy and the primary action on each page reads as less primary than it should.
Couldn't reach
  • /dashboard, /app, /audit-results, /generator/howtoitem (post-fill state)·All gated by magic-link auth. Without an automated way to click the verification link, the authenticated surface cannot be captured from a clean runner identity.
  • Continue with Google·OAuth flow redirects to accounts.google.com which Playwright cannot complete from a clean runner identity.

Share this run

57,604 test runs recorded · 1,174 products tested with Lastest

This test was built for schemagen.io — claim it free

One click copies the test and baseline screenshots into your own Lastest workspace. Re-run on every deploy and catch regressions before your users do — free, no card required.