In this video· click a step to jump to it
Test recording
Meal Money — landing walkthrough
18,672 ms · 0 pixels changed · matches baseline
We built this regression test for mealmoney.app — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against mealmoney.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, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
const WAITLIST_EMAIL = '[email protected]';
// Browser-side smooth scroll (top -> bottom -> top), passed as a STRING.
const SCROLL_THROUGH = "(async () => { const ease = t => 1 - Math.pow(1 - t, 3); const max = Math.max(0, document.body.scrollHeight - window.innerHeight); if (max < 40) return; const anim = (a, b, ms) => new Promise(res => { const t0 = performance.now(); const step = now => { const p = Math.min(1, (now - t0) / ms); window.scrollTo(0, a + (b - a) * ease(p)); p < 1 ? requestAnimationFrame(step) : res(); }; requestAnimationFrame(step); }); await anim(0, max, 1600); await new Promise(r => setTimeout(r, 350)); await anim(max, 0, 900); })()";
// EB Chromium bootstrap: real UA + block third-party console noise.
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' });
const routeBlock = async (p) => {
for (const pattern of [
'**/cdn-cgi/scripts/**/email-decode.min.js',Checks run
Notes from the demo run
AI-generatedMeal Money's landing is tight and single-purpose: a clear 'eating out is eating your budget' hero, a privacy angle (no bank login, no card sync), app mockups (Spending Log + weekly Progress charts), a testimonial, an FAQ, and a waitlist CTA repeated top and bottom. It's a pre-launch site (iOS/Android 'coming soon'), so there is no authenticated app to walk yet.
- Sharp single-purpose positioningThe 'Meal Money does one thing' framing plus the no-bank-login privacy differentiator reads clearly and is now baselined across the full page.
- Waitlist CTA captured in useLastest filled the 'Notify Me When it's Ready' email field and pixel-locked the primary conversion action (both the header and footer forms).
- Product mockups pixel-lockedThe Spending Log and weekly Progress chart mockups are now visual baselines, so any accidental shift on your next deploy flags instantly.
- Guessed app routes 404 today/login, /register and /dashboard return real 404s (expected pre-launch) but a friendly 'coming soon' redirect would keep early visitors who guess a URL from hitting a dead end.
- Waitlist submit reloads to a blank stateSubmitting the email full-reloads and briefly rendered blank in our run; a smooth inline 'Thank you' would tighten the one moment your visitors actually convert.
Share this run
Proof your app is not AI slop
This test was built for mealmoney.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.