Working at Google Creative Lab I have the privilege of extensively trying some AI tools to unlock new ideas. These are conversations I have developed together with Gemini.
I have been using AI studio, Antigravity, Gemini Pro, Flow.
Rotate Anything
The core synthesis is powered by Gemini 3 Pro. To create a 45° view, the model combines the original photo with the floor count and a hyper-realistic style prompt. For the deeper 135° rotation, we use a “chaining” technique: the AI references the previously generated 45° image rather than the original front-facing one. This helps the model better understand the building’s 3D volume and maintain consistency across every angle.
The technical stack is built for speed and reliability, featuring a React and Tailwind CSS frontend for a sleek dark-mode interface. An Express/Node.js backend handles API requests and proxies Street View data, while the Google GenAI SDK manages direct communication with the Gemini models.
Rotate Anything is an architectural visualization tool that uses generative AI to turn 2D building photos into consistent 3D-like rotations.
The process begins with an image upload or a high-quality capture via our Google Street View integration. Before generating any new views, Gemini 3 Flash analyzes the image to count floors and identify structural elements, providing a “scale anchor” that ensures the building’s proportions remain accurate during rotation.


Synesthesia Sequencer
The app is an interactive music sequencer that turns your photos into sound. When you upload an image, Gemini 2.5 Flash acts as a “synesthesia expert,” analyzing the vibe, colors, and complexity of your photo to map them directly to a musical composition. It generates a unique melody and a matching drum rhythm—like a steady house beat for a bright, energetic photo or a sparse, glitchy rhythm for something more moody.
You aren’t just a listener, though. You can use the Complexity Knob to strip the melody down to its core or dial it up for a denser sound, and the Dual-Grid Sequencer lets you manually tweak the AI’s pattern or swap synth sounds on the fly. Under the hood, the app is built with React and Tailwind for a smooth interface, while Tone.js handles the heavy lifting for the audio engine and real-time effects.
The app’s audio engine is built on 100% real-time synthesis using Tone.js, which means it doesn’t just play back static MP3 samples—it mathematically generates every sound in your browser the moment you hear it. The lead is a lush, evolving FM synthesizer, and the drum kit is modeled after classic analog hardware like the TR-808.
To get that authentic feel, we synthesized each drum from scratch: the kick is a deep, dropping sine wave, the snare and clap use tailored bursts of noise, and the hi-hats get their metallic sizzle from high-frequency modulation. By using synthesis instead of samples, the app has zero loading times and no “missing file” errors, resulting in a more organic sound that stays perfectly in sync as you tweak the tempo.


Berlusclock
Berlusclock is a kinetic web clock that turns timekeeping into a hypnotic visual rhythm.
Every single second, the engine acts as a live VJ, seamlessly cutting between a randomized pool of 1-second “tick” or “tock” video clips—sliced entirely from Silvio Berlusconi’s infamous first TikTok—to create a mesmerizing, relentless loop perfectly locked to the current time. You aren’t just watching a standard video player, though—you can tap anywhere on the screen to instantly freeze the visual chaos and capture a perfect snapshot of the moment.
I brought this project to life by “vibecoding” alongside Gemini, translating raw creative direction into a fully custom, responsive WordPress implementation. Under the hood, the app’s visual engine relies on 100% real-time pixel manipulation using the HTML5 Canvas API. Instead of using static CSS filters, it mathematically generates a live, dynamically pixelated mosaic of the active video, coated in a moody dark wash. To achieve its striking final look, the massive digital typography and a sweeping analog second hand act as a dynamic stencil, natively erasing the pixelated mask to reveal the razor-sharp, full-resolution video pulsing underneath.
A Melody of Tides and Type
A Melody of Tides and Type This piece is a vibecoding experiment built entirely in Antigravity, exploring the intersection of generative language, physics, and dynamic sound.
The core experience is driven by an interactive WebGL particle system using React Three Fiber, where simulated wind currents actively wash over shifting, algorithmically generated headlines.
Rather than just tracking visual physics, the atmosphere is deeply tied to a custom generative music engine built entirely from scratch on the native Web Audio API.
Every five seconds, the system analyzes the sentiment of the newly generated text to choose a major or minor harmonic mood, then translates the speed and direction of the wind into shifting, four-note synth drone chords. As the particle waves crash over the typography, the system triggers randomized percussive droplets and dynamically pitches the melodic arpeggiator based on both the cursor’s position and the physical height of the text on the screen.
The entire audio-visual ecosystem runs cleanly in the browser as a static export, requiring zero external audio files or backend servers.