Recording of the visual regression run on helorix.vercel.app · Helorix AI — signup bug.

In this video· click a step to jump to it

H
Failed

Test recording

Helorix AI — signup bug

36,940 ms · 1,968 pixels changed

We built this regression test for helorix.vercel.app — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against helorix.vercel.app. 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+'-'+(String(s).replace(/[^a-z0-9]+/gi,'-').replace(/^-|-$/g,'').toLowerCase().slice(0,22)||'view')+'.png');
  const ORIGIN='https://helorix.vercel.app'; let idx=1; const findings=[];
  const cap=async(s)=>{ stepLogger.log('Scenario '+idx+': '+s); await page.screenshot({path:shot(idx,s),fullPage:true}); idx++; };
  await page.goto(ORIGIN+'/',{waitUntil:'domcontentloaded'}).catch(function(){}); await page.waitForTimeout(1800); await cap('home');
  await page.goto(ORIGIN+'/signup',{waitUntil:'domcontentloaded'}).catch(function(){}); await page.waitForTimeout(1800); await cap('signup-form');
  await page.getByRole('textbox',{name:/first name/i}).fill('Viktor').catch(function(){});
  await page.getByRole('textbox',{name:/last name/i}).fill('Demo').catch(function(){});
  await page.getByRole('textbox',{name:/email/i}).first().fill('viktor.demo'+Date.now().toString(36)+'@lastest.cloud').catch(function(){});
  await page.getByRole('textbox',{name:/contact/i}).fill('5551234567').catch(function(){});
  const pws=page.locator('input[type=password]'); await pws.nth(0).fill('LdH17xDemo9!').catch(function(){}); await pws.nth(1).fill('LdH17xDemo9!').catch(function(){});
  await page.locator('label').filter({hasText:/terms/i}).first().click().catch(function(){});
+9 more lines claim the test to get the full code.

Checks run

Run
Visual
0.68%
Text
DOM
Network
+6 −6
Console
A11y
Perf
18 over
URL
Variables
Full report
Log in →
1,968
Diff px
37s
Duration
Accessible
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

Helorix AI sells a lifetime, one-time-payment AI support chatbot for Shopify and business sites — a clean landing with a clear hero, feature grid and simple pricing. But the core conversion path is broken: every account signup fails. The signup form submits to a free-tier Render backend that cold-starts past the client's 10-second timeout, so the page surfaces 'timeout of 10000ms exceeded' and no account is created — meaning nobody can actually buy or use the product right now.

Highlights
  • Clear one-time-payment pitch
    The 'lifetime, no monthly fees' positioning is stated plainly in the hero and repeated in pricing — strong, differentiated messaging for the Shopify chatbot space.
Friction points
  • Signup is 100% broken (launch-blocking)
    POST helorix.onrender.com/api/auth/register aborts at a 10s client timeout because the free-tier Render backend cold-starts slower than that. The form shows 'timeout of 10000ms exceeded' and never creates an account. Fix: warm/upgrade the Render service (or add a healthcheck ping) and raise the client timeout with a retry.

4 visual changes

Step 3492 px changed
Before
Before
After
After
Diff
Diff
Step 4492 px changed
Before
Before
After
After
Diff
Diff
Step 5492 px changed
Before
Before
After
After
Diff
Diff
Step 6492 px changed
Before
Before
After
After
Diff
Diff

Share this run

56,412 test runs recorded · 958 products tested with Lastest

This test was built for helorix.vercel.app — 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.