Kitchen Moodboard
Collaborative AI · FamilyAn infinite canvas where my family drags in kitchen tiles and Gemini paints what the finished room could look like.
My family wanted to redo the kitchen — new tiles, new look — and kept trying to picture it. So I built a shared moodboard where you drop in real product photos from the store and ask AI to render the room they'd make.
What it is
An infinite, zoomable board you fill with images and text notes. The real use case was concrete: import tile and cabinet photos from a store like OBI, arrange them, and generate previews of how that combination would actually look as a kitchen — so the family could argue about it on the same canvas instead of in their heads.
Multi-reference AI generation
The interesting bit isn't single-prompt image generation — it's that you can select several existing board items as references and generate a new image from all of them at once. Pick the tile swatch, the cabinet shot, and a text prompt, hit Generate, and Gemini composes a result that draws on every reference. The new image lands back on the board where you placed it.
Real-time & saved
It's built for more than one person looking at once. A Flask + Socket.IO backend broadcasts every new item the moment it's added, so the board updates live for everyone, and the whole board state is persisted to disk so it's still there next time you open it.
Watching the bill
AI image generation isn't free, so the server tallies it: input/output tokens and per-image output cost are estimated on every generation and accumulated into a running total. Handy for a family tool you don't want quietly racking up a Gemini bill.
Status
This one is half-finished — the core works (infinite board, live sync, multi-reference generation, cost tracking), but it's not polished or deployed. It's the kind of project that gets picked back up the next time the renovation conversation flares up.
Built with
Python, Flask + Flask-SocketIO (threading model) for the real-time board, a JSON-backed store for board state and the running cost total, and Google Gemini via google-genai for multi-reference image generation. Vanilla-JS infinite-canvas front end.