Inspiration
Small sellers lose sales to their photos, not their products. A candle maker with an online shop, a skincare brand that sells through its social feed, someone at a weekend market: they all compete against companies with photo studios. The product is often just as good. The photo is not.
And it is not one photo. A shop needs clean listing shots, and a feed needs something new almost every day. A shoot for every post is out of reach for a small brand, and most of these sellers run everything from their phone.
So the question that shaped BrandStills was narrow: can you build a studio-grade scene around a product, from a phone, while leaving the product itself untouched?
What it does
You add your product once, from one ordinary phone photo. The app studies it: its shape, the exact text on the label, the logo. Then you pick a look, or just describe one. Well under a minute later you have a finished shot.
There are 40+ looks: clean marketplace backgrounds, studio setups, lifestyle settings, seasonal scenes and creative treatments. Collection scenes shoot several products together. Any result can be edited by describing a change ("light the candle"), swapping the product, moving the camera, or adding a caption. Any look you like can be saved as a template for the rest of your catalog.
No account is needed to start, and your photos back up automatically.
How I built it
The app is Expo and React Native, with RevenueCat powering in-app purchases and subscriptions. The backend runs on Cloudflare Workers with D1 and R2.
The part worth describing is the generation pipeline, which is four stages rather than one prompt: product analysis, a trait-driven rule engine, generation, and a quality check that compares every result with the original photo.
Challenges I ran into
Calibrating the quality check was the hardest problem, and it was a false-positive problem. Early versions flagged label text as wrong whenever it curved around the package, sat partly behind a wrap, or had a pattern behind the wordmark. That nudges people to spend a credit "fixing" a photo that was correct all along. The check is now deliberately conservative: it ignores hidden text, background patterns, and anything too small to read with confidence. When in doubt it stays quiet. It is still the part I tune the most.
What I learned
Trust is the product. Every decision that looked like overhead at the time (the trait rules, the quality check, the server-owned credit ledger) exists because a seller has to be able to post the result without checking it letter by letter. An impressive photo of not-quite-your-product has no value.
What's next
Deeper collection shots, more seasonal scenes timed to the retail calendar, and faster renders.
Built With
- cloudflare
- expo.io
- revenuecat
Log in or sign up for Devpost to join the conversation.