App 01 · Android · In beta
RoomForge AI
Photograph a room, say what you want changed, and get that room back redesigned. Not a generic render that resembles it: the same walls, the same windows, the same doorway, with the surfaces and furnishings you asked for.
The link goes up when the build is ready.
Why I built it
The room comes back wrong
Apps that redesign a room from a photo have been around for years. The complaint about all of them is the same: you get a beautiful picture of somebody else’s room. Walls move. A window disappears. The sofa you wanted to keep is gone, and the colour you asked for is only roughly the colour you asked for.
That was a fair trade when the only way to edit an image was to generate a new one from scratch. It isn’t any more. Image models now follow plain written instructions about what to change and what to leave, which is what makes an app like this worth building again.
So RoomForge is built around control rather than around the render. Every screen is about what stays the same.
Before you commit
The review screen
Everything the render will do is on one screen: what is locked, what may change, the exact colours, and what it costs. Afterwards the result sits behind a slider against your original photo, so you can check the room is still your room.
Review
Living room
Redesign
Your photo
How it works
Four steps
Photograph the room
One photo, taken on the phone or picked from the gallery. It belongs to the project from then on, so nothing asks you to upload it again.
Say what it is and what you want
Room type and a design style: Modern, Minimal, Scandinavian, Japandi, Luxury, Industrial, Contemporary, Traditional, Bohemian or Coastal.
Set the controls
Structure Lock, Furniture Lock and an exact colour for the walls, floor, furniture and accents. The review screen shows the cost before you commit.
Compare and refine
A before/after slider against your original photo, four variations if you want them, and refinements that send only what changed.
The controls
What stays, and what may change
Structure Lock
The instruction sent to the model names what must not move: walls, window positions and sizes, doorways, ceiling height, room proportions. It also caps how far the render may drift from your photo, so the result is your room rather than a room like yours.
Furniture Lock
Keep everything, replace only the areas you mark, or restyle all the furnishings and keep the architecture. Each choice sends its own instruction rather than hoping the model infers it.
Colours you actually choose
Not “make it beige”. You pick an exact value per surface from a swatch grid, a hex field or a preset palette, and the hex reaches the model paired with its colour name, because a bare hex often gets ignored.
Failures cost you nothing
A failed render explains itself, refunds the credit in full and keeps every setting and your photo. You come back to a filled-in form, not an empty one.
How it’s built
Under the hood
- App
- React Native and Expo, TypeScript throughout, built as a real installable APK rather than a wrapped website.
- Backend
- FastAPI on Vercel with Postgres. Every AI key stays on the server; none is in the app.
- Room analysis
- An NVIDIA vision model reads the photo for room type, furniture and the architecture that must stay put.
- Redesign
- Cloudflare Workers AI running FLUX.2 [klein]. Over the last week of testing, renders took about 12 seconds in the middle of the pack.
- Swapping engines
- The app talks to one interface, not a vendor. No vendor name appears outside the provider folder, so changing engines is a config change.
- Updates
- Most changes reach installed phones over the air, without anyone reinstalling anything.
- Tests
- 135 on the backend and 81 in the app, covering the credit ledger, the failure refund, cross-user isolation and the instructions that carry the promises above.
Where it’s at
In beta, and honest about it
The app runs end to end against the live backend: accounts, photo, analysis, render, before and after, refine, history, save and share. It is being tested by a small group first, and the download link goes up here when the build is ready for everyone.
Renders are free during the beta. There are no payments in the app, no subscription, and nothing that quietly converts into one. The free render capacity has a daily ceiling, so during the beta a very busy day can run it out.
Still to come: an editor for marking exactly which objects to replace, a password reset, and an iPhone version. Those are listed here rather than buried, in the same spirit as the board.
The link goes up when the build is ready.
Get an email when an app launches
One email when a new app launches. That’s all I’ll send.