Skip to content

feat(website): add E2E tutorial page for WanderWeird multi-service stack - #489

Open
sgedda wants to merge 3 commits into
mainfrom
cursor/e2e-tutorial-page-a348
Open

sgedda wants to merge 3 commits into
mainfrom
cursor/e2e-tutorial-page-a348

Conversation

@sgedda

@sgedda sgedda commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

Overview

Adds a comprehensive E2E tutorial page to the Mockifyer website at /e2e-tutorial. This page documents the complete multi-service end-to-end test stack with WanderWeird Travel (Expo web + Express API) and the Mockifyer dashboard, demonstrating features like client lanes, field overrides, status overrides, network tracing, and more.

Changes

  • New page: /e2e-tutorial with React + Tailwind UI matching existing site design
  • SEO & metadata: Configured page title, description, Open Graph tags
  • Sitemap: Added to sitemap.xml with priority 0.8
  • LLM context: Added to both llms.txt and llms-full.txt
  • Navigation: Added to main navigation menu
  • E2E tests: 12 Playwright tests validate all content sections and navigation
  • Video recordings: 9 side-by-side MP4 clips (app + dashboard) embedded in walkthrough sections 5.1–5.9, recorded with E2E_PRESENTATION=1 for clarity. Each video has a poster image, duration caption, and fallback download link. Total size: ~17 MB of video assets added to the repo.

How it works

The tutorial page provides:

  1. Architecture overview: Stack diagram showing Expo web, Express API, Mockifyer dashboard, and external services

  2. Setup instructions: Commands to run all four services (dashboards, API gateway, Expo web)

  3. Nine walkthrough scenarios with embedded video demonstrations:

    • 5.1: Mock editor body edit (46s)
    • 5.2: Field overrides (54s)
    • 5.3: Status override 503 (40s)
    • 5.4: Client lanes (55s)
    • 5.5: Header scenario picker with strict lanes (49s)
    • 5.6: Network view tracing (1m 9s)
    • 5.7: From-scratch selective mocking (4m 26s)
    • 5.8: Tracing walkthrough (4m 23s)
    • 5.9: Delay and status overrides (3m 7s)
  4. Callout: Links to PR test(e2e): dashboard GUI tests with side-by-side app + dashboard videos #487 for branch build and trace features

  5. Key benefits: Highlights no fixture stale-ness, realistic paths, and scenario isolation

All videos use native <video controls preload="none" playsInline> with poster images—no external dependencies or autoplay.

Testing

cd mockifyer-web
npm run build:frontend
npx playwright test e2e/e2e-tutorial.spec.ts

All 12 tests pass:

Screenshots

Full-page screenshots (light and dark themes) showing the embedded videos are available in /opt/cursor/artifacts/tutorial-page-videos/.

Repository size impact

This PR adds ~17 MB of video and poster image files to the repository. These files are served as static assets via Express (which supports HTTP range requests for video seeking) and are essential for demonstrating the E2E workflow.

Alternative: If preferred, the videos could be hosted externally (e.g., on a CDN or YouTube) and embedded via iframe or external links. This would reduce the repository size at the cost of an external dependency for the documentation.

Notes

  • No grok-bot-vm references anywhere (verified in all files)
  • Neutral terminal prompts throughout (dev@wanderweird)
  • Express static file serving automatically supports HTTP range requests, so video seeking works correctly in production on Railway
  • Videos recorded with E2E_PRESENTATION=1 hold moments where values change (presentation pacing note added to page)
  • PR test(e2e): dashboard GUI tests with side-by-side app + dashboard videos #487 callout preserved as requested
Open in Web Open in Cursor 

Note

Low Risk
Marketing/docs-only frontend changes plus Playwright coverage; no auth, API, or runtime Mockifyer behavior changes beyond new static routes and assets.

Reviewed by Cursor Bugbot for commit 7541746. Bugbot is set up for automated code reviews on this repo. Configure here.

…ack walkthrough

- Create new /e2e-tutorial page with complete tutorial from PR #487
- Add route, navigation item, SEO metadata, sitemap entry
- Include all 9 scenario walkthroughs with neutral terminal prompts
- Add branch note callout for PR #487 dependency (easy to remove after merge)
- Wire into llms.txt and llms-full.txt for AI discoverability
- Add comprehensive e2e test covering page sections and navigation
- Frontend build passes (ESLint config not present as noted in AGENTS.md)

No product package versions changed (website-only change).
Tutorial covers proxy runtime, client lanes, scenarios, network trace,
per-endpoint control, failure injection, and dashboard GUI tests.

Co-authored-by: Sebastian Gedda <sebastian.gedda@gmail.com>

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: E2E locators match repeated page text
    • Added .first() to six getByText locators that match multiple elements (branch name, service names, and temperature values) to prevent Playwright strict mode failures.

You can send follow-ups to the cloud agent here.

Reviewed by Cursor Bugbot for commit c673e4c. Configure here.

Comment thread mockifyer-web/e2e/e2e-tutorial.spec.ts Resolved
- Add .first() and exact: true to selectors that match multiple elements
- All 11 e2e-tutorial tests now pass
- Navigation test (mobile menu) failure pre-existed and is unrelated

Co-authored-by: Sebastian Gedda <sebastian.gedda@gmail.com>
@cursor
cursor Bot force-pushed the cursor/e2e-tutorial-page-a348 branch from e05f2d1 to df9149a Compare October 28, 2026 11:56
Add 9 side-by-side MP4 clips (app + dashboard) with poster images
to sections 5.1–5.9 of the E2E tutorial page. Videos recorded with
E2E_PRESENTATION=1 for clarity. Total size: ~17 MB.

- Copy videos and posters to frontend/public/videos/e2e-tutorial/
- Embed with native <video controls preload=none playsInline>
- Add duration captions and fallback download links
- Add note about presentation mode timing
- Extend e2e test to verify all 9 video elements exist
- Express static serving supports HTTP range requests for seeking

All 12 Playwright tests pass.

Co-authored-by: Sebastian Gedda <sebastian.gedda@gmail.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants