In progress · iOSWeb version · playable below
Gravity maze
What if the product process were a desk toy you could tilt?
● Avoid holes → exit00:00 · 0 falls
Avoid every black hole.
Walls guide the ball. The green EXIT is the only goal.

What I built · Prototo, React Native
- Board
- An industrial desk toy: ivory graph paper, evergreen rails, one steel ball. The process runs top to bottom — Figma, Prototype, UT, Dev, QA — and SHIP is the only way out.
- Holes
- Five requests every designer knows are black holes. “Make the logo bigger” is visibly the biggest. Fall in and the ball sinks over 550 ms, then it’s back to START.
- Physics
- Fixed 120 Hz steps. Tilt gain 3.2 with 65% new-sample smoothing; rolling drag 0.22/s, acceleration 820, speed cap 310. Level sets your neutral.
- Feedback
- Every hole has its own sound. Falls get an error haptic, the exit a success haptic, wall hits a light tap. Sound and haptics switch off separately.
What I learned · from the build notes
- 01
The first version had bumpers, a moving gate, sticky surfaces and checkpoint resets. Held against a real physical maze, they all went: walls guide, holes are holes, one exit.
- 02
It was tuned for a faster, more physical roll: drag 0.85 → 0.22/s, acceleration 480 → 820, tilt gain 2.4 → 3.2.
- 03
Stage names are landmarks, never hidden touch targets — reading the board and playing it are separate jobs.
- 04
Eleven physics checks pass in code: every hole, the exit, a full no-fall route. How it feels in the hand on a real iPhone is still unverified.