In this video· click a step to jump to it
Test recording
LicenseFlow — authed app walkthrough
51,993 ms · 1,067 pixels changed
We built this regression test for app.licenseflow.dev — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against app.licenseflow.dev. 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`);
// ── Post-login action 1: authed dashboard, dismiss onboarding + cookie bar ──
stepLogger.log('Action 1: authed dashboard');
await page.goto(baseUrl + '/dashboard', { waitUntil: 'domcontentloaded' });
await page.waitForLoadState('networkidle', { timeout: 2500 }).catch(function () {});
await page.getByRole('button', { name: /accept all/i }).first().click({ timeout: 3000 }).catch(function () {});
await page.getByRole('button', { name: /^dismiss$/i }).first().click({ timeout: 3000 }).catch(function () {});
await page.waitForTimeout(1200);
const bodyText = await page.locator('body').innerText();Checks run
Notes from the demo run
AI-generatedWe signed up for LicenseFlow and drove your control plane end-to-end: dashboard, products, licenses, key generator, key formats, device registry, fingerprints, templates and request logs. Signup was the fastest we have measured this week, straight from the form to a populated dashboard with no email round-trip. The Core (FREE) plane reads like a real product rather than a trial shell, and the fingerprints and key-format screens are the ones that made us want to keep clicking.
- Signup lands you in the productCreate Account went straight to /dashboard with no verification email in the way. For a developer-tools buyer evaluating at 11pm, that removes the single most common drop-off point.
- The free plan is not an empty shellThe dashboard ships with real telemetry shape: 1,420 edge requests (24h), 3.8ms average evaluation latency, 99.4% cache hit. A brand-new account still sees what the product does.
- Key formats can be tried without creating dataInsert Sample on /key-formats plus the Base32/Base58/Hex/PIN switch let us exercise key parsing before we owned a single product or license.
- Gated pages give no reason/entitlements, /releases/manage and /policies each render a bare Go to Settings button with no sentence explaining what is missing. A new account cannot tell whether it is gated, empty, or broken. One line of copy would fix it.
- Cookie bar competes with the support widgetThe Accept All / Decline bar re-asserts on internal route changes and sits under the chat bubble in the bottom-right, so both compete for the same corner on every page we visited.
- /offline-licenses·Enterprise upgrade wall - we never capture paywalls in a demo
- /tiers·Upgrade to Startup (Standard) wall
- /insights/usage·Upgrade wall
Visual change
Share this run
Proof your app is not AI slop
This test was built for app.licenseflow.dev — 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.


