Recording of the visual regression run on jobrays.io · JobRays — authed career engine walkthrough.

In this video· click a step to jump to it

J
Passed ✓

Test recording

JobRays — authed career engine walkthrough

48,246 ms · 0 pixels changed · matches baseline

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

Take this test with you

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

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const EMAIL = '[email protected]';
  const PASSWORD = '•••';
  const shot = (n, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  const settle = () => page.waitForLoadState('networkidle', { timeout: 12000 }).catch(() => {});

  stepLogger.log('Step 1: Login + authed dashboard');
  await page.goto(`${baseUrl}/auth/login`, { waitUntil: 'domcontentloaded' });
  await settle();
  await page.waitForTimeout(2500);
  await page.locator('input[type="email"]').first().fill(EMAIL);
  await page.locator('input[type="password"]').first().fill(PASSWORD);
+62 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
✓
Text
—
DOM
✓
Network
+156 −156
Console
✓
A11y
—
Perf
30 over
URL
6 diverged
Variables
—
Full report
Log in →
0
Diff px
48s
Duration
—
Accessible
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

JobRays positions itself as a career engine, not a job board, and routes first-time verified users to /billing rather than a feature-rich dashboard. The signup form already collects first name, last name, phone with country code, email, and password before account creation, signaling a high-intent, paid-tier audience. After verify, /billing renders an empty branded shell — the product gates roadmap generation behind a plan selection.

Highlights
  • Pre-paywall data collection
    Capturing phone with country code at signup means the eventual outbound flow (coach messaging, scheduled call) does not need a second onboarding form.
  • Firebase + Razorpay stack
    firebase:authUser localStorage and rzp_unified_session_id cookie show the team optimized for paid conversion in India before scaling globally, which matches the [email protected] footer.
  • Honest naming
    Calling itself a career engine rather than a job board sets expectations that the user pays for an outcome, not a feed of listings.
Friction points
  • Empty /billing as first authenticated screen
    After clicking the verify link the user lands on a near-blank /billing page; the product would benefit from a single hero card explaining the plan trade-off rather than an empty shell.
  • Phone is required at signup
    Country-code dropdown plus phone number adds friction before the user has seen any value; making phone optional would reduce drop-off.

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
tests
all passing
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 jobrays.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.