In this video· click a step to jump to it
Test recording
Build in Public — builder directory walkthrough
89,884 ms · 1,650,934 pixels changed
We built this regression test for buildinpublic.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against buildinpublic.com. 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 PROFILE = '/x/lastestcloud';
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, 1400); await new Promise(r => setTimeout(r, 350)); await anim(max, 0, 800); })()";
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' });
await page.route('**/cdn-cgi/scripts/**', function (r) { r.abort(); }).catch(function () {});
await page.route('**/*sentry-cdn.com/**', function (r) { r.abort(); }).catch(function () {});
// ── Scenario 1 — signed-in home with member banner ────────────────────────
stepLogger.log('Scenario 1: Signed-in home (member banner)');
await page.goto(baseUrl + '/', { waitUntil: 'domcontentloaded' });Checks run
Notes from the demo run
AI-generatedWe signed in with X, landed as member no. 08912, then used the directory the way a builder would: searched it, filtered to a country, browsed the cities index, and filled in our own profile with a name, bio, location and website. The X-only login is the right call for this audience — one click, no password, and the handle you're claiming is the handle you already build under. The profile edit form is small and does exactly what it says: four fields, a 0/160 bio counter, and 'Links become clickable automatically' written where you need to read it.
- One-click X login fits the audienceNo email, no password, no confirm step. For a directory keyed on X handles, OAuth isn't just convenient — it's the thing that makes the handle trustworthy.
- Location does real workThe edit form explains why it wants your location ('puts you on the city and country pages, so builders near you can find you') instead of just asking. Country filter and the cities index then pay that promise off immediately.
- The join moment is concrete'MEMBER NO. 08912. You're in, @lastestcloud' with the profile URL right there beats a generic welcome — it makes a 6,963-row directory feel like something you're now inside of.
- A fresh profile is flagged 'Reduced visibility'The badge shows on your own profile with no explanation of what triggered it or how to clear it. One line of hover text ('low recent #buildinpublic activity on X') would turn a worrying label into a to-do.
- Every profile's main panel says 'Coming soon''Build in Public stats and activity will show up here' occupies the largest block on the page you're asking people to claim and share. Until stats land, showing recent X build-posts there would make a claimed profile worth linking to.
7 visual changes
Share this run
Proof your app is not AI slop
This test was built for buildinpublic.com — 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.




















