Recording of the visual regression run on search.sh · Search.sh — app walkthrough.

In this video· click a step to jump to it

S
Passed ✓

Test recording

Search.sh — app walkthrough

28,267 ms · 216,912 pixels changed

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

Take this test with you

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

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const shot = (n, s) => screenshotPath.replace('.png', `-${n}-${s}.png`);
  const ORIGIN = "https://search.sh";
  await page.context().setExtraHTTPHeaders({ 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36' }).catch(function(){});
  // Scenario 1: public home
  await page.goto("https://search.sh", { waitUntil: 'domcontentloaded' });
  await page.waitForLoadState('networkidle', { timeout: 8000 }).catch(function(){});
  await page.waitForTimeout(1400);
  { const cb = page.getByRole('button', { name: /accept all|^accept$|got it/i }).first(); if (await cb.isVisible().catch(function(){return false;})) { await cb.click({timeout:2000}).catch(function(){}); await page.waitForTimeout(500); } }
  stepLogger.log('Scenario 1: Home');
  await page.screenshot({ path: shot(1, 'home'), fullPage: true });
  // Sign-in
+54 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
70.31%
Text
—
DOM
✓
Network
+8 −8
Console
✓
A11y
C
Perf
32 over
URL
✓
Variables
—
Full report
Log in →
216,912
Diff px
28s
Duration
C
Accessible
WCAG 2.2 · 70
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

Search.sh is an AI-search API/CLI aimed at developers and AI agents. Signed in, you land directly on a focused dashboard that pairs a credits balance with a one-field 'Create key' form, so a new developer can mint their first API key without hunting through settings.

Highlights
  • Zero-friction key creation
    The dashboard leads with a single 'Key name (optional)' input and a CREATE KEY button - first API call is one click from login, no nested settings.
  • Credits visible on landing
    Credit balance and BUY CREDITS sit on the same authed screen as key management, so usage and billing context are never more than a glance away.
Friction points
  • Sparse first-run dashboard
    With 0 credits and no keys yet, the authed home is mostly empty-state; a seeded sample key or a 'try a search' inline demo would make the first session land harder.

6 visual changes

Step 335,827 px changed
Before
Before
After
After
Diff
Diff
Step 435,827 px changed
Before
Before
After
After
Diff
Diff
Step 535,827 px changed
Before
Before
After
After
Diff
Diff
Step 636,477 px changed
Before
Before
After
After
Diff
Diff
Step 736,477 px changed
Before
Before
After
After
Diff
Diff
Step 836,477 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
57,604 test runs recorded · 1,174 products tested with Lastest

This test was built for search.sh — 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.