Inspiration

For many people starting chemotherapy, hair loss begins within a few weeks. Cancer charities such as the American Cancer Society and Breastcancer.org suggest choosing a wig before treatment starts, while you can still match your own hair.

Online, that choice is mostly a guess. A wig is a photo on a display head. It isn't cheap, return terms vary by seller, and a worn wig usually can't be returned. Virtual try-on helps, but a nice preview alone doesn't answer the real question: is this the right one for me, at this price, on these terms?

StillYou is built around that question. The tagline is the whole idea: choose your wig while you still have your hair.

What it does

StillYou is a private, no-account web app for choosing a wig around hair loss.

  • A dated reference photo. Save a photo of yourself, with its date and your permission. Every preview starts from it, so you can keep comparing even after your hair changes.
  • Wig previews with the YouCam AI Hairstyle VTO. Add a photo of a wig and StillYou runs a custom-reference hair transfer on your saved photo.
  • An honest review step. Each result opens beside your original and the reference. You note whether your face still looks like you and whether the wig carried through. A preview has to be reviewed before it can become your pick.
  • Live try-on. StillYou cuts the hair layer out of a YouCam result once and tracks it on your face in the browser. Camera frames never leave the device.
  • Brows and hats. Brow shades with the YouCam Makeup VTO (skin smoothing switched off), and an experimental hat preview for days without a wig.
  • Decide with facts, not just looks. Set your priorities and a budget, then record each wig's exact variant link, price, shade, cap size, fibre and return terms, with the source. StillYou lines the options up, flags a price above your budget, and lists what you still need to confirm. You choose and write down why. If a price, term or priority changes later, the pick is cleared, so your reason stays true.
  • Before you buy. A printable card with cap-measuring steps, your policy notes and the questions to ask the seller.
  • Choose with family. A private link (up to seven days, revocable) lets someone close vote and leave a note. Your original photos and private notes are never shared.

How we built it

StillYou is one Next.js + TypeScript app: React pages for the UI and route handlers for the backend, deployed on Vercel.

YouCam APIs, all called server-side so the API key never reaches the browser:

  • AI Hairstyle VTO (/s2s/v2.1/task/hair-transfer): the wig reference on your saved photo, plus template styles
  • AI Makeup VTO (/s2s/v2.0/task/makeup-vto): brow colour with smoothing disabled
  • AI Hat VTO (/s2s/v2.0/task/hat): hat previews
  • AI Facial Color Tones (/s2s/v2.0/task/skin-tone-analysis): optional colour context
  • Hair tools (hair-color, hair-bang, hair-ext, hair-vol, hair-curl): cuts and colours to explore
  • File API (/s2s/v2.0/file): signed uploads

Every task is created once (no automatic retries, so a failed request doesn't burn units) and polled until it succeeds or fails. Results are copied into private storage before YouCam's URLs expire, and each one keeps a link to the exact source photo and its date.

Live mode uses MediaPipe Tasks Vision (Selfie Multiclass segmentation and Face Landmarker) in a Web Worker. The hair mask is extracted from the saved result once, then aligned to eye and nose landmarks with smoothing at about 15 fps. Models are version-pinned, checksum-verified and served from the app itself.

Storage and privacy: Neon Postgres for workspace state, with optimistic version checks so simultaneous family votes don't overwrite each other, and a private Vercel Blob store for images. Uploads are re-encoded to strip metadata. Workspaces are tied to an HttpOnly cookie and expire after 30 days, and a daily cron cleans up expired workspaces. Share links can only reach the selected previews, never the original photos.

Quality: 32 unit tests (Vitest), plus Playwright runs that drive the real UI end to end, including a simulated-camera test for live mode.

Challenges we ran into

  • Retail wig photos don't work as references. We tested five real product photos of wigs on faceless display heads, and all five came back error_no_face. Photos of wigs on mannequins with painted faces worked, but in two of five the cut came out noticeably different. So StillYou asks for a reference with a visible face, explains that either photo can cause a face error, and always shows the original, reference and output side by side so differences stay visible.
  • Expecting the wrong error. We planned around error_hair_too_short for short-haired photos, but a buzz-cut source generated fine. The saved-photo design still matters, for consistency and for having a photo you like, but we stopped promising a failure the API doesn't reliably produce.
  • Missing fields. Facial Color Tones succeeded but didn't return the hair colour fields in our tests. Instead of guessing, the app shows "unavailable".
  • Live try-on without a live hairstyle SDK. The Hairstyle API returns still images, so we built the live layer ourselves from a single generated result, entirely in the browser.

Accomplishments that we're proud of

  • A complete flow, from a saved photo to a reasoned, printable decision, built for one specific audience.
  • Real YouCam results at every step, including two wig previews, brows and a live overlay, in a product that feels calm rather than clinical.
  • Limits shown inside the product (labels, review prompts, an evidence page), not hidden in a README.
  • Privacy by design: no accounts, private storage, metadata stripped, scoped share links and one-click deletion.

What we learned

A virtual try-on is most useful when it feeds a decision. The preview, the product facts and the reason belong together. We also learned to test the API with real inputs early: the most important design changes (visible-face references, side-by-side review) came from what the API actually returned, not from what we expected.

What's next for StillYou

  • Testing with people preparing for treatment and with cancer support organisations. No user study has been done yet.
  • Retailer integrations for exact variant data and face-visible product photos, to improve reference fidelity.
  • Validating live mode on physical phones and Safari.
  • Support for scarves and head wraps, and more languages.

Limits: a preview shows colour and style, not fit, comfort, cap construction or how the fibre feels, and it isn't a prediction of how you'll look during treatment. StillYou gives no medical advice.

StillYou was designed and built for this hackathon during the submission period (October 19 – November 2, 2026).

Built With

Share this project:

Updates

Submission history