POINTER BREAK

Pointer Break

A skatepark that lives above your windows. Exhaust smoke behind your cursor, and a skateboard that launches off ramps, grinds rails, and stays wherever it lands until you go and collect it.

Coming to the Mac App Store MACOS 14+ · NO PERMISSIONS

gameplay.mov
ramp → air → grind
halfpipe line
menu bar + tuning

PLACEHOLDERS · REAL CAPTURES AND THE GAMEPLAY CLIP GO IN BEFORE LAUNCH

SMOKE

Exhaust behind the cursor

Emitted by distance travelled, so the trail looks the same at 60 and 120 Hz. Slow deliberate movement stays completely clean.

RAMPS

Quarter-pipes you launch off

Cross the lip with enough speed and roughly the right heading and the board leaves on its own, exit direction taken from the lip tangent.

RAILS

Grinds, catchable out of the air

Which is what makes ramp → air → grind → pop chain on its own. A landing from a wide angle grinds slowly rather than at full pace.

HALFPIPES

Pump, stall, air out

Parametrised by arc length with gravity resolved onto the local tangent, so all three are one equation. A line runs for a few airs, then settles.

SWING AIRS

No furniture needed

Reverse the cursor at the top of a swing and the board pops off and tricks. The halfpipe is wherever you happen to be drawing it.

Nothing here is a plugin.

macOS has no general “load my code into the frontmost app” mechanism any more, and it isn’t needed: the global behaviour is a property of the window. Clicks pass straight through to whatever is underneath, and the process is never the active application.

Everything is CPU-simulated and GPU-drawn as instanced Metal draws, one pass per display, from a single buffer. If you’re typing, you’re not moving the mouse — once the board has come to rest the display link is invalidated and a 10 Hz poll takes over. That’s deliberately a poll rather than a global event monitor: it keeps the app free of any permission prompt.

LSUIElement + .accessory
The process is never the active application, so there is nothing to switch away from.
ignoresMouseEvents = true
Borderless, clear background: clicks pass straight through to whatever is underneath.
.screenSaver level
Above the menu bar and over other apps’ full-screen windows.
.canJoinAllSpaces + .stationary
Follows you between Spaces instead of living on one.
one window per display
Each screen draws the same scene offset by its own origin, from one shared instance buffer.

It costs nothing when you’re not moving the mouse.

SYSTEM
macOS 14 or later
PERMISSIONS
none of any kind
INJECTION INTO OTHER APPS
none
IDLE COST
10 Hz poll, display link parked
PRICE
free; £4.99 one-time full unlock
START AT LOGIN
optional, in the menu

The download is free and stays free: the board, the smoke, the tricks and the default layout, with no time limit. One payment of £4.99 unlocks the layout editor, the extra furniture and the score — once, not a subscription.

Not on the Mac App Store yet

This page gets the real listing link the day it ships. Quit from the menu bar item, or pkill -x PointerBreak.

Known rough edges

Space between displays

The walls are the edges of your displays, so a board bounces off the gaps between them rather than resting somewhere nothing draws. Two displays that meet only at a corner are not joined.

The real cursor always draws on top

The WindowServer composites it above every window, so the board sits under the arrow. Hiding the system cursor would pull in the Accessibility permission.

Some places nothing draws

The login window, Fast User Switching and secure input fields. Expected, and not fixable.

Start at Login needs approval

A mixed tick in the menu means macOS is waiting on you; clicking it opens System Settings.