Recording of the visual regression run on www.stackello.fr · Stackello — app walkthrough.

In this video· click a step to jump to it

W
Passed

Test recording

Stackello — app walkthrough

54,476 ms · 5,554 pixels changed

We built this regression test for www.stackello.fr — it's yours to keep, free.

Take this test with you

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

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const O = 'https://www.stackello.fr';
  const NEXTJS_MISSION = O + '/missions/677f885f-67c2-404d-bbec-6fcedcb8f73a';
  let idx = 1;
  function shot(s) { return screenshotPath.replace('.png', '-' + idx + '-' + String(s).replace(/[^a-z0-9]+/gi, '-').toLowerCase().slice(0, 24) + '.png'); }
  async function cap(s) { stepLogger.log('Scenario ' + idx + ': ' + s); await page.screenshot({ path: shot(s), fullPage: true }); idx++; }
  async function settle(ms) { await page.waitForLoadState('networkidle', { timeout: 7000 }).catch(function(){}); await page.waitForTimeout(ms || 1500); }
  async function fillPH(ph, val) { const el = page.locator('input[placeholder*="' + ph + '" i], textarea[placeholder*="' + ph + '" i]').first(); if (await el.isVisible().catch(function(){return false;})) { await el.fill(val).catch(function(){}); } }
  // 1. public home
  await page.goto(O + '/', { waitUntil: 'domcontentloaded' }).catch(function(){}); await settle(1500); await cap('home');
  // 2. authed dashboard
  await page.goto(O + '/dashboard', { waitUntil: 'domcontentloaded' }).catch(function(){}); await settle(1800); await cap('dashboard');
+45 more lines claim the test to get the full code.

Checks run

Run
Visual
0.83%
Text
DOM
Network
+117 −117
Console
A11y
Review
Perf
312 over
URL
Variables
Full report
Log in →
5,554
Diff px
54s
Duration
Review
Accessible
WCAG 2.2
Review
Fast
Web Vitals

Notes from the demo run

AI-generated

Stackello is a clean, French-language freelance marketplace pairing dev/agency talent with tech missions. Signup is a fast two-path picker (Freelance vs Agence) over Supabase auth, and the post-login dashboard drops you straight into a focused four-tab workspace (missions, applications, favorites, chat) with no onboarding friction.

Highlights
  • Frictionless role-based signup
    The register flow asks one decision up front (Freelance vs Agence) then a 3-field form — no wizard, no credit card. The 'Gratuit, sans carte bancaire' line is reassuring for indie devs.
  • Calm, single-column dashboard
    Post-login the nav is just Missions / Applications / Favorites / Chat. The restraint reads as confidence — you always know where you are.
Friction points
  • Email-confirm gate before dashboard
    Supabase PKCE verify link is required before the dashboard unlocks. The confirm email landed fast, but a 'resend' affordance on the post-signup screen would reduce drop-off.
  • Empty-state coaching
    First-run Missions / Applications / Favorites are empty with little guidance on the next action — a sample mission or a 'complete your profile to get matched' nudge would help activation.

2 visual changes

Step 22,836 px changed
Before
Before
After
After
Diff
Diff
Step 32,718 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.
56,423 test runs recorded · 962 products tested with Lastest

This test was built for www.stackello.fr — 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.