In this video· click a step to jump to it
Test recording
LearnWithMe — app walkthrough
23,152 ms · 0 pixels changed · matches baseline
We built this regression test for learn-with-me-app-fe.vercel.app — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against learn-with-me-app-fe.vercel.app. 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 findings = [];
async function shot(n, slug) {
await page.screenshot({ path: `${screenshotPath}-${n}-${slug}.png`, fullPage: true });
}
async function safeGoto(url, label) {
const resp = await page.goto(url, { waitUntil: 'domcontentloaded' }).catch(() => null);
if (!resp || !resp.ok()) {
stepLogger.warn(`Skipping ${label}: response not ok (${resp && resp.status()})`);Checks run
Notes from the demo run
AI-generatedLearnWithMe has a clean, confident dark-hero landing page with clear value props (video lessons, progress tracking, Razorpay checkout) and a simple email+password signup with an instructor/student role picker. Login is instant with no email verification gate. The instructor dashboard is well laid out: a single-page course builder with title, price, description, thumbnail upload, and a dynamic sections/lessons editor that lets you add multiple sections and lessons inline.
- No email-verification frictionSignup grants an authenticated session immediately (auto-login on register) — zero context switches for a new instructor or student to start using the product.
- Dynamic course builder UXThe +Add Section / +Add Lesson pattern on the instructor dashboard is clean and lets an instructor sketch out a full curriculum (multiple sections, multiple lessons per section) in one screen without a page reload.
- Clear public course catalogThe /courses page lists real priced courses with instructor bylines and a working client-side search filter, a good baseline browsing experience for students.
- Course creation silently fails with any lesson attachedSubmitting the Create Course form with at least one section/lesson filled in returns a 400 from POST https://learnwithme-app-be-3.onrender.com/api/courses with body {errors: {sections.0.lessons.0.videoUrl: Path videoUrl is required}}. The frontend form field is labeled 'YouTube URL' but appears to send it under a different key than the backend schema's videoUrl field, so the backend rejects every course that has lesson content. The failure is silent client-side (no toast, no inline error), the form just stays filled and the course never appears in My Courses. This looks like a small fix (align the frontend payload key with the backend schema's videoUrl field) but currently blocks the core instructor value proposition end-to-end.
- Course cards on /courses are not clickableThe course grid cards (image, title, instructor, price) have no href or click handler, there is no course detail page to view curriculum or begin checkout from the catalog view, so a student can browse titles but cannot drill into a course.
Share this run
Proof your app is not AI slop
This test was built for learn-with-me-app-fe.vercel.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.