David HsiaoCase study / 02
App Store product / applied AI
Live on the App Store · New features tested separately in TestFlight

OutfitSignal: Shipping a Consent-Aware AI Style App

My first App Store release: an accountless, 18+ outfit feedback app that turns user-selected photos into subjective style guidance while keeping consent, age suitability, and data boundaries visible.

OutfitSignal outfit feedback screen from the current App Store screenshot set
OutfitSignal before and after outfit comparison with improvement feedback
OutfitSignal · outfit feedback and before/after review
ReleasePublic App Store product
ClientExpo · React Native
IntelligenceGemini · Structured feedback
EdgeCloudflare Worker
01

A signal, not a verdict.

OutfitSignal frames every result as subjective style guidance rather than an objective judgment of a person. Gemini returns structured feedback that the interface can explain and prioritize, while the product language keeps taste, context, and user choice in the foreground.

  • Feedback stays focused on garments, combinations, and styling moves.
  • An optional Style Coach can consider occasion, intended vibe, and a short context note.
  • Saved looks, suggestions, and before/after results remain in an on-device improvement album.
02

One look, then a useful comparison.

The current public app focuses on one person's outfit. A user can save a look, try the suggestions, and compare an updated photo with the original. The album keeps both photos and their feedback together, so improvement is a visible workflow rather than a score with no next step.

  • Photos with another visible person are rejected before outfit feedback.
  • Occasion coaching stays separate from the overall outfit assessment.
  • Before/after details remain available when returning to a saved look.
03

Make the boundary visible before upload.

OutfitSignal has no sign-in flow. Submitted photos and briefs pass through a Cloudflare Worker to Gemini; the Worker processes them transiently, while saved album content stays on device. The app requires an 18+ affirmation and uses Apple's Declared Age Range capability on supported devices.

  • The AI photo handoff is disclosed before the user submits.
  • Accountless use reduces the personal data the product needs to hold.
  • Anonymous support feedback is separated from outfit media and cleaned up on a retention schedule.
04

Keep the model key off the phone.

The Expo and React Native client resizes selected imagery before sending it to a rate-limited Cloudflare Worker. The Worker holds the Gemini credential and validates structured feedback, keeping the provider key out of the mobile bundle and giving the interface a predictable result shape.

05

Generate the share surface on device.

OutfitSignal can produce 9:16 Story and 4:5 Feed images locally, alongside a text-only option. Raw occasion notes are excluded from the share asset so the social output can communicate the styling result without leaking the user's private context.

06

The release surface is part of the product.

OutfitSignal is my first publicly shipped iOS product. Subsequent work redesigned the interface, expanded the local album, and refined photo selection and sharing. Internal TestFlight builds separately test a private wardrobe with individual-item capture, Apple Vision cutouts, and editable AI metadata suggestions; those experiments are not presented as current App Store features.