-
-
Pruv turns skincare trials into measured Proof Reviews powered by YouCam Skin AI.
-
A real baseline scan runs through Perfect Corp. YouCam Skin Analysis v2.1.
-
Pruv stores the starting YouCam measurements that will be compared at follow-up.
-
Matching baseline and follow-up metrics are compared deterministically — no LLM generates the score changes.
-
Human opinion + measured before/after change become one complete Proof Review.
-
YouCam provides the measurement layer; Pruv adds longitudinal trial state, deterministic comparison, review generation, and sharing.
Inspiration
Most skincare reviews answer one question:
“Did you like this product?”
But when someone spends 2–4 weeks testing a serum, moisturizer, or treatment, the question they really care about is:
“Did anything visibly change for me?”
That is what inspired Pruv.
We wanted to build a review format that combines the human side of a skincare trial with actual before-and-after measurements.
Instead of ending with:
★★★★★ “Worked great!”
Pruv creates a Proof Review containing both opinion and observed change.
What it does
Pruv turns a skincare product trial into a measured review powered by Perfect Corp. YouCam Skin Analysis v2.1.
The flow is simple:
- Start a skincare product trial.
- Give explicit consent and capture a baseline scan.
- Pruv measures redness, radiance, texture, acne, and pores with YouCam Skin AI.
- Use the product normally.
- Return for a follow-up scan.
- Pruv compares matching baseline and follow-up measurements deterministically.
- Add a star rating, buy-again choice, and short personal experience.
- Generate a private Proof Review that can optionally be shared through a ProofLink.
The final result combines:
human opinion + measured before/after change
Pruv is observational, not diagnostic, and does not claim that a skincare product caused a measured change.
How we built it
Pruv is a responsive web application built with Next.js, React, TypeScript, Supabase, and Perfect Corp. YouCam Skin Analysis v2.1.
YouCam is not used as a one-time scanner.
For every baseline and follow-up scan, Pruv uses the real Skin Analysis workflow:
- initialize the analysis file;
- upload the captured image through YouCam's upload flow;
- create an asynchronous Skin Analysis task;
- persist the task ID;
- poll the same task until completion;
- normalize and store the structured measurements.
The baseline also establishes the measurement configuration for that trial.
The follow-up must reuse the same metric family so Pruv never compares incompatible measurements.
The numerical change is then calculated directly in application code:
[ \Delta = \text{Follow-up Score} - \text{Baseline Score} ]
An LLM is not the source of truth for these measurements.
We also built:
- anonymous Proof Trial sessions with no signup;
- explicit facial-processing consent;
- persistent longitudinal trial state;
- baseline and follow-up orchestration;
- deterministic comparison;
- rating and experience capture;
- private Proof Reviews;
- optional public ProofLinks;
- a judge-friendly demo flow.
Challenges we ran into
The hardest part was not running Skin Analysis once.
It was making two scans meaningfully comparable.
YouCam's analysis flow is asynchronous, so a scan could not simply be implemented as:
image → API → result
We needed to persist task IDs and poll the same task so refreshes or serverless execution limits would not accidentally create duplicate analysis requests.
We also had to make sure the follow-up reused the same measurement configuration as the baseline instead of comparing incompatible analysis modes or metric families.
That turned the architecture into:
baseline → persistent trial → follow-up → matching measurements → deterministic comparison → review
Another challenge was keeping the product simple for a first-time user while still preserving enough technical rigor underneath.
Accomplishments that we're proud of
We're proud that Pruv feels like a complete consumer product rather than an API demo.
Some things we're especially happy with:
- real YouCam Skin Analysis integrated into both baseline and follow-up;
- a full longitudinal workflow instead of a one-time scan;
- deterministic comparison rather than AI-generated numbers;
- no login or signup required;
- a clear final artifact — the Proof Review;
- private-by-default sharing;
- a demo that lets judges understand the complete idea quickly;
- a product experience that explains itself without needing technical knowledge.
The biggest accomplishment is that YouCam is not just visible in the stack — it is essential to the product itself.
Without the measurement layer, the Proof Review does not exist.
What we learned
The biggest product insight was:
Measurement alone is not a review.
A skin score can show what was observed, but it cannot tell you:
- whether the product was pleasant to use;
- whether it fit someone's routine;
- whether they would buy it again;
- how they personally experienced the trial.
That is why Pruv combines two different kinds of evidence:
YouCam measurement + human experience.
We also learned that Skin AI can have useful product forms beyond diagnosis or recommendation.
It can become infrastructure for better consumer reviews.
On the engineering side, we learned how important asynchronous task state, capture consistency, and measurement contracts become when an AI API is used longitudinally rather than once.
What's next for Pruv
The hackathon version focuses on proving one workflow exceptionally well:
one skincare product → baseline → trial → follow-up → measured review
Next, we would let anyone create a Proof Trial for any skincare product instead of using a seeded demo product.
After that, Pruv could aggregate many independent Proof Reviews into product-level pages.
Today a shopper might see:
4.7 ★ from 2,000 reviews
A future Pruv-powered product page could also show:
4.7 ★ + structured observed outcomes from real product trials
The long-term idea is not to replace normal reviews.
It is to make them more useful by adding an observational evidence layer beside them.
Built With
- next.js
- openrouter
- postgresql
- react
- supabase
- tailwind
- typescript
- vercel
- vitest
- zod
Log in or sign up for Devpost to join the conversation.