FurnishVision
Shoppers photograph their room and see the rug, curtains and cushions in it before they buy.
The short version.
FurnishVision answers the question every furnishing shopper asks: how will this look in my room? A shopper uploads a photo of their room, picks products, and gets a photorealistic image with those exact products placed in it. Renders can be layered, so a rug can go down first and curtains go up after.
For the retailer's exhibition stand we built an Android app where visitors photograph their own room on the spot and see it transformed while they wait.
What was broken.
Online furnishing shoppers all ask the same question. The retailer's sales team answered it one WhatsApp message at a time, shoppers hesitated at checkout, and returns ate into margins. At exhibitions, visitors loved the fabrics and walked away without buying because they couldn't picture them at home.
- Sales staff answered "how will it look?" by hand, one message at a time.
- Shoppers abandoned carts they weren't confident about.
- Returns from products that looked different at home.
From idea to production.
- 23 Jan
Proposal and v1
Proposal, pricing and the first working web platform, all in one day.
- Jun 2026
Better renders
Moved to a newer image model with better realism and product fidelity, running as background jobs.
- 27–30 Jun
Exhibition app
An Android booth app with a guided visitor flow, and a queue-based render pipeline to handle the rush.
What we built.
The shopper takes or uploads a photo, chooses up to eight products, and FurnishVision composites them into the room at a believable scale, keeping the existing furniture intact. Each product's real dimensions guide its size, and each fabric's light behaviour is described honestly, so a blackout curtain lets only a soft glow through at the edges. The finished look goes straight to the cart.
- Step 1Shopper photographs the room
- Step 2Picks rugs, curtains and cushions
- Step 3AI places the products
- Step 4Before and after reveal
- Step 5Whole look added to cart
What we delivered.
Multi-product renders
Up to eight products placed into one room image.
Layered looks
Use a finished render as the base for the next product.
True-to-size placement
Real product dimensions guide the render, scaled against sofas, doors and ceilings in the photo.
Honest light
Sheers glow, blackouts block. Each fabric's real light behaviour shapes the image.
Exhibition mode
Staged progress messages during the wait, a sample room if a photo fails, and an automatic reset between visitors.
Shop and checkout
Catalogue, product pages, cart and checkout on web and mobile.
A closer look.
Intelligent, and trustworthy.
Background rendering
High-quality renders take about 90 seconds, longer than a normal web request allows, so they run as background jobs the app checks on.
Keep the room as it is
The instructions to the image model stop it redrawing the customer's existing furniture.
Built to handle a crowd
The exhibition pipeline queues renders so a busy stand never overloads the system.
AI-made catalogue imagery
Product and banner images for the demo catalogue were themselves generated with an image model.
The stack.
- Web
- Next.js 16 shop with ImageKit image delivery
- Mobile
- React Native (Expo) Android app
- AI
- OpenAI image editing, earlier Gemini
- Rendering
- Background functions, then Cloudflare KV and Queues
The numbers.
Build proof
Expected impact for users
Verified from project repositories, test runs and release records. Projected modelled estimates of user impact, not measured client results.
Got an idea? Let's ship it.
Tell us the workflow that's costing you customers or hours. We'll come back with a prototype plan, a timeline in weeks, and a fixed quote.