Own project · macOS

Mac Activity Lab: testing websites under real scrolling

It simulates scrolling and cursor movement so I can watch how a page behaves during long, irregular use.

Stopped
Active
Menu bar controls

Challenge

Scroll-triggered animations, lazy-loaded images and sticky headers often break only after long, irregular use of a page. Scrolling by hand for fifteen minutes is a poor test.

My role

The whole project: idea, code and testing.

What I did

  • A native SwiftUI and Core Graphics app. It scrolls the active window and moves the cursor at random intervals within a set range.
  • Settings: separate toggles for movement and scrolling, interval range, cursor travel limit.
  • A log of recent events shows what happened and when, so a bug is easy to tie to a specific action.
  • Controls stay available in the menu bar after the window is closed.

Safety

Works only after you deliberately grant the macOS Accessibility permission. Emergency stop: move the cursor to the top-left corner of the screen.

Result

  • A tool I use to test the websites I build.

Tools

Swift, SwiftUI, Core Graphics, macOS Accessibility permissions