Google Gravity Pool Mr Doob

If you’ve ever wished you could watch the world’s most powerful search engine collapse into a heap of bouncing, sliding rubble, you’re not alone. For over a decade, a niche corner of the internet has been obsessed with a single phrase: "Google Gravity Pool Mr Doob."

At first glance, these four words seem like a random string of tech jargon. But for those in the know, they represent one of the most entertaining, nostalgic, and hypnotic browser experiments ever created. This article dives deep into what this phrase means, who Mr. Doob is, how the "pool" fits into the picture, and why millions of people have wasted hours playing with it.

Safety: Yes. Google Gravity Pool Mr Doob is 100% safe. It’s a JavaScript experiment that runs entirely in your browser. It doesn’t install software, collect data, or violate any terms (it’s a client-side prank).

Mobile: Unfortunately, the original experiment was designed for desktop browsers with mouse input. On a smartphone, you may see it working, but dragging physics objects with touch is imprecise. Some mobile browsers may fail to load the Box2D engine. For the best experience, use a laptop or desktop PC.

There are two main ways to experience this. The most reliable method is going directly to the developer's website.

Feeling inspired by Mr Doob? You can build a simple gravity experiment using modern tools: google gravity pool mr doob

Alternatively, just search for "Mr Doob experiments" and enjoy the nostalgia.

Before we get to the "pool" version, let’s break down the original.

Google Gravity is a JavaScript experiment that manipulates the Google homepage using a physics engine. Instead of a neatly organized search bar and buttons, all elements—logo, search box, "I’m Feeling Lucky" button—suddenly obey the laws of gravity. They fall down your screen, bounce, stack, and can be dragged around like real objects.

The effect was created using Box2D (a 2D physics engine) and was initially uploaded to Mr.doob.com, the personal playground of a legendary creative coder.

What it is

Key technical elements

How it typically works (implementation steps)

  • Prepare elements for physics:
  • Build the physics loop:
  • Collision detection and response:
  • Mouse interaction:
  • Render:
  • Cleanup:
  • How to try it (actionable ways)

  • Run a local copy (developer-friendly):
  • Build your own minimal Google Gravity clone (outline):
  • Optimize with transform and will-change to ensure smoothness.
  • Use existing libraries to speed development:
  • Design and UX tips

    Legal and ethical notes

    Learning value

    Quick starter code snippet (conceptual)

    for each element:
      rect = element.getBoundingClientRect()
      set element.style.position = 'absolute' at rect.left/top
      body =  x: rect.left, y: rect.top, vx:0, vy:0, mass:1
    loop(timestamp):
      dt = time since last frame
      for each body:
        body.vy += gravity * dt
        body.x += body.vx * dt
        body.y += body.vy * dt
        if body hits bottom: body.y = floor; body.vy *= -restitution
        element.style.transform = `translate3d($body.xpx, $body.ypx, 0) rotate($angledeg)`
      requestAnimationFrame(loop)
    

    (Implement full collision handling, mouse forces, and performance optimizations in real code.)

    Further exploration

    If you’d like, I can generate a runnable HTML + JS example you can open locally that recreates a simple Google Gravity effect. Which option do you prefer: a minimal demo, a matter.js-based version, or a version with drag-and-drop and touch support? If you’ve ever wished you could watch the


    The success of Google Gravity Pool Mr Doob led to dozens of spin-offs. You might also enjoy: