StyleNow: Your AI-Powered Professional Fashion Studio
Inspiration
The inspiration for StyleNow came from a persistent problem in online fashion: the "Imagination Gap." When shopping online, it is incredibly difficult to visualize how a specific garment—seen flat on a screen—will look on a real human body with specific lighting and angles.
I wanted to move beyond simple 2D overlays or "paper doll" style try-ons. I envisioned a tool that didn't just paste clothes onto a person, but simulated an entire Professional Photo Studio. Users can feel like art directors, controlling not just the wardrobe, but also the camera lens, lighting, and film grain, leveraging the latest advancements in multimodal Generative AI.
What it does
StyleNow allows users to:
- Virtually try on clothing and accessories with professional photoshoot realism.
- Control the studio environment: camera style, shot type, lighting, color grading, and background.
- Receive structured, AI-generated fashion critiques and numerical match scores.
- Simulate outfits across historical fashion timelines (e.g., see how a suit would have looked in the 1900s).
- Auto-generate multi-angle views and high-detail textures of garments for realistic presentation.
It essentially turns any browser into a professional fashion studio powered by AI.
How we built it
Tech Stack:
- Frontend: React 19, Tailwind CSS for a sleek, dark-mode UI reminiscent of Lightroom or Capture One.
- AI Engine: Google's Gemini 3 Pro models via the
@google/genaiSDK.
AI Architecture:
- Visual Synthesis (
gemini-3-pro-image-preview):
We construct a dynamic prompt based on the user's Pro Studio settings. For example, a "Portrait" lens selection is mapped mathematically to the prompt context:
$$ \text{Prompt}_{\text{visual}} = f(\text{ShotType}, \text{CameraStyle}, \text{LightingSetup}, \text{ColorGrading}, \text{Background}) $$
- Stylistic Analysis (
gemini-3-pro-preview):
Once the image is generated, we pass it to the text model in strict JSON schema. This allows the AI to return a structured critique, including a numerical rating (R \in [0,100]) and match percentage (M).
Challenges we ran into
- Identity vs. Style Preservation
Early iterations would generate amazing outfits but alter the model's face. We addressed this by fine-tuning prompt instructions:
$$ \text{Maximize Identity Weight } (\omega_I) \text{ while optimizing Outfit Fidelity } (\omega_O) $$
This ensured facial features remain consistent while giving freedom to AI for clothing and pose rendering.
- Deployment & Secrets
Deploying to Google Cloud Run caused API key selection issues. We re-engineeredApiKeySelectorto prioritize environment variables:
const apiKey = process.env.API_KEY || prompt("Enter API Key");
Built With
- gemini
- nanobanana
- typescript
Log in or sign up for Devpost to join the conversation.