In this video· click a step to jump to it
Test recording
BirthdayCard.Online — full create flow
63,491 ms · 2,011 pixels changed
We built this regression test for birthdaycard.online — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against birthdaycard.online. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const STAMP = Date.now().toString(36);
const EMAIL = `viktor+birthdaycard${STAMP}@lastest.cloud`;
const PASSWORD = `•••`;
const NAME = `Viktor ${STAMP.slice(-4)}`;
let scn = 0;
const shot = async (slug) => {
scn += 1;
const p = screenshotPath.replace('.png', `-${String(scn).padStart(2,'0')}-${slug}.png`);
try { await page.screenshot({ path: p, fullPage: true }); } catch (e) {}
stepLogger.log(`shot ${scn} ${slug}`);Checks run
Notes from the demo run
AI-generatedBirthdayCard.Online is a no-friction card maker — visitors land directly in a form with theme/background pickers, message textarea, color/font/effect sliders, and optional Spotify/YouTube embed. A recently-created public gallery on the homepage gives social proof. Account is created at save time using the same email/password fields embedded inside the create form (no separate signup step).
- Public gallery on the homepageRecently Created Cards strip shows real user-generated examples below the hero. Doubles as social proof and inspiration.
- Inline account creationEmail/password fields live at the bottom of /create.php — visitor builds the card first, registers second, never bounces off to a separate signup page. Smart conversion-funnel design.
- Spotify and YouTube embed supportOptional URL fields for Spotify track + YouTube video on the card. Turns a static card into a media post — strong differentiator vs greeting-card-app baseline.
- Background picker has ~50 radio options/create.php exposes every theme + every background as separate radio inputs (50+ options in the DOM). Helpful for variety, but the visual picker is the actual UX — the underlying form will overwhelm any screen reader / keyboard user. Consider a hidden-radio + visible-card pattern.
- Required date format ambiguousinput[type=date] for the birthday — fine on modern browsers but locale formatting on older mobile browsers can confuse users.
Visual change
Share this run
Proof your app is not AI slop
This test was built for birthdaycard.online — 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.


