Recording of the visual regression run on eodly.io · Eodly — app walkthrough.

In this video· click a step to jump to it

E
Passed ✓

Test recording

Eodly — app walkthrough

59,063 ms · 126 pixels changed

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

Take this test with you

This is a real Playwright test, recorded against eodly.io. 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, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  const SITE = 'https://eodly.io';
  let authedShots = 0;

  // ---------- PUBLIC PHASE ----------
  stepLogger.log('Scenario 1: Marketing home');
  await page.goto(SITE + '/', { waitUntil: 'domcontentloaded', timeout: 45000 }).catch(function(){});
  await page.waitForLoadState('networkidle').catch(function(){});
  await page.waitForTimeout(1500);
  await page.getByRole('button', { name: /accept|got it|ok|agree/i }).first().click({ timeout: 2000 }).catch(function(){});
  await page.screenshot({ path: shot(1, 'marketing-home'), fullPage: true });
+69 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
0.05%
Text
—
DOM
✓
Network
—
Console
✓
A11y
A
Perf
190 over
URL
✓
Variables
—
Full report
Log in →
126
Diff px
59s
Duration
A
Accessible
WCAG 2.2 · 91
B
Fast
Web Vitals · 85

Notes from the demo run

AI-generated

We drove Eodly end-to-end on eodly.io: signed in with Google, created a workspace, and walked the authenticated console (Dashboard, Team, KPIs, Campaigns, Settings) plus the source-connect flow. The zero-state is unusually well designed - it names the exact next action ('Connect a source to get your first report') instead of dumping an empty dashboard.

Highlights
  • Action-oriented empty state
    The dashboard zero-state leads with 'Connect Telegram (fastest)' and explains WHY (so your first report has real activity) - removes the 'now what?' moment most tools leave.
  • Clear briefing framing
    The header 'evening briefing 19:00 UTC · clinical' plus CHECKED IN / SHIPPED / NEEDS ATTENTION / SILENT tiles make the product's promise legible before any data exists.
Friction points
  • Six connect buttons, no recommended order
    The dashboard shows Telegram, GitHub, Slack, Linear, Discord and Teams at equal weight; a single 'Start here' primary (you already mark Telegram 'fastest') would reduce first-run choice paralysis.
  • Onboarding invite step is skippable but unlabeled
    The invite-team step during signup has no clear 'skip for now' affordance, so a solo founder evaluating the tool can feel stuck before reaching the dashboard.

3 visual changes

Step 337 px changed
Before
Before
After
After
Diff
Diff
Step 437 px changed
Before
Before
After
After
Diff
Diff
Step 1052 px changed
Before
Before
After
After
Diff
Diff

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,568 test runs recorded · 1,174 products tested with Lastest

This test was built for eodly.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.