Recording of the visual regression run on shipthatcode.com · shipthatcode — app walkthrough.

In this video· click a step to jump to it

S
Passed ✓

Test recording

shipthatcode — app walkthrough

47,251 ms · 357,069 pixels changed

We built this regression test for shipthatcode.com — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against shipthatcode.com. Claim it into your own workspace and re-run it on every deploy — free.

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const APP_ENTRY = '/dashboard';
  const NAV_HINTS = ['/dashboard','/courses','/paths','/languages','/categories','/collab'];
  const SEARCH_VALUE = 'redis';
  const LS_TOKEN = '•••';
  const LS_FP = 'guest_qqpu2t_mrgl6ifd';
  const shot = (n, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  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, 1200); await new Promise(r => setTimeout(r, 300)); await anim(max, 0, 700); })()";

  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.addInitScript(function (d) { try { localStorage.setItem('codeforge_token', d.t); localStorage.setItem('codeforge_guest_fingerprint', d.f); } catch (e) {} }, { t: LS_TOKEN, f: LS_FP });
  for (const pat of ['**/cdn-cgi/scripts/**/email-decode.min.js','**/sentry-cdn.com/**','**/browser.sentry-cdn.com/**','**/cdn.segment.com/**','**/connect.facebook.net/**','**/*.hotjar.com/**']) {
+97 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
100.00%
Text
—
DOM
✓
Network
+639 −1098
Console
✓
A11y
A
Perf
189 over
URL
9 diverged
Variables
—
Full report
Log in →
357,069
Diff px
47s
Duration
A
Accessible
WCAG 2.2 · 93
B
Fast
Web Vitals · 85

Notes from the demo run

AI-generated

We walked your authenticated Ship That Code dashboard end to end: signed in as viktorlst65dh, the learner home renders your progress stat cards (lessons completed, day streak, problems solved, accuracy), a Continue-learning rail, Recent submissions, and full Courses/Paths/Languages/Categories/Collab navigation, then opened the Real-Time Collaboration workspace with its Create/Join session flow. A clean, fast, coherent learn-by-building experience.

Highlights
  • Dashboard tells the story at a glance
    Your four stat cards (lessons completed, day streak, problems solved, accuracy) plus Continue-learning and Recent-submissions give a new learner an instant sense of where they stand and what to do next.
  • Real-Time Collaboration is a standout
    The Collab page cleanly splits Create New Session (language + optional lesson) from Join Session by 6-char code, with a crisp 1-2-3 how-it-works strip. Pair-programming built into a course platform is a genuine differentiator.
Friction points
  • Empty-state dashboard for a fresh account
    Every stat card reads 0 and both rails say No courses in progress / No submissions yet, so the first-run dashboard feels inert. Gift: seed one suggested starter course or a sample streak so day-one learners see momentum instead of zeros.
  • Collab header drops the signed-in identity
    On the Real-Time Collaboration page the header showed Log in / Get Started instead of your avatar, unlike the dashboard. Gift: reuse the authed header component on Collab so the session context stays consistent.

7 visual changes

Step 115,091 px changed
Before
Before
After
After
Diff
Diff
Step 34,999 px changed
Before
Before
After
After
Diff
Diff
Step 5193,311 px changed
Before
Before
After
After
Diff
Diff
Step 66,356 px changed
Before
Before
After
After
Diff
Diff
Step 738,248 px changed
Before
Before
After
After
Diff
Diff
Step 838,248 px changed
Before
Before
After
After
Diff
Diff
Step 960,816 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
57,421 test runs recorded · 1,174 products tested with Lastest

This test was built for shipthatcode.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.