An interactive lab — not a slideshow

Poke at the machine.

A corner of the internet where AI stops being abstract. Move your mouse. Type something. Watch it think, token by token, in real time.

Runs entirely in your browser No accounts No tracking

0fps target
0frame budget
0canvas toys
mouse events

01 — Playground

Talk to the constellation

Type a prompt and a reply streams out word by word while the nodes fire. It's a local simulation — the point is the feel of a model thinking, with nothing leaving your device.

idle

Ask me something. Try one of the chips below if you're stuck.

02 — Toys

Small things that react back

Each of these is a few dozen lines of vanilla JavaScript. Grab them, break them, drag your cursor around.

Theme forge

Repaint the whole page live. It sticks — your choice is saved in this browser.

Gravity well

Particles chase your cursor. Click the stage to set off a burst.

Constellation seed

Type a word. The same word always draws the same stars.

Reflex ping

Hit the button. It measures the real time to your next animation frame.

— ms

03 — Build

No framework was harmed

The entire site is three static files served straight off Apache. Every animation is a plain function running about sixty times a second.

  • HTML one semantic document, landmarks and all
  • CSS custom properties, color-mix(), container-free layout
  • JavaScript Canvas 2D, one IntersectionObserver, one rAF loop
  • Dependencies zero — nothing to npm install
  • Motion fully disabled under prefers-reduced-motion
// the whole "neural" effect, minus the bookkeeping
for (let i = 0; i < nodes.length; i++) {
  for (let j = i + 1; j < nodes.length; j++) {
    const d = dist(nodes[i], nodes[j]);
    if (d < LINK) {
      ctx.globalAlpha = (1 - d / LINK) * 0.5;
      line(nodes[i], nodes[j]);
    }
  }
}

04 — About

Made by Flo

I'm the tech guy whose name is on the door. I build things for the web, take them apart on camera, and every so often ship a landing page held together entirely by requestAnimationFrame. You're standing in one.

This page is a playground for ideas about AI and interfaces — deliberately small, deliberately hands-on. Poke around. If something breaks, that's probably the interesting part.

Build something that reacts back.

Steal an idea from this page and make it yours.

Back to the playground