solutions / ar virtual try-on

Retail & commerce · Forus

Try on a hundred frames without touching one.

A mobile AR experience for Forus - live camera try-on with face-mesh alignment, and favourites that remember your face in every frame.

Delivered at Forus
ClientForus
DomainEyewear retail tech
BuildMobile AR app · 27 screens
StackKotlin · MediaPipe · Sails.js
DataMongoDB · catalog · snapshots

Where this started

Eyewear is the one product people refuse to buy unseen - a frame that looks right on the shelf looks wrong on a face. Forus wanted customers to browse the full catalog from anywhere and still get the mirror moment. Stock photos could not do it. Their own face could.

Decision 01

Align the face before showing a single frame.

The try-on opens with a guided face-mesh alignment - MediaPipe landmarks mapped across the face before any frame renders. Every frame after that sits where real glasses would, which is the difference between a gimmick and a fitting.

Guided face-mesh alignment before try-on

Decision 02

Try-on at the speed of choosing.

The live view keeps the controls on top of the camera: switch frame type - full rim, half rim, rimless - flip through shapes, colours and brands without leaving your own reflection. Browsing happens on your face, not in a grid.

Live try-on with frame-type switcher

Decision 03

Favourites remember your face, not the product photo.

Saving a frame saves the snapshot of you wearing it. The favourites list becomes the decision screen - your face, four frames, side by side - which is exactly how people actually choose glasses.

Favourites remember your look in each frame

The result

Twenty-seven screens, designed end to end: shop by category, shape and brand, a try-on that fits frames to a mapped face, and favourites that turn snapshots into decisions. The mirror moment, shipped to wherever the customer is.

A fitting, not a filter

Face-mesh alignment before render - frames sit where real glasses would.

Browse on your own face

Frame type, shape, colour and brand switching inside the live camera view.

Decisions from snapshots

Favourites keep your photo in each frame - compare side by side, add to cart.

Under the hoodKotlin · MediaPipe · Node.js · Sails.js · MongoDB

Bring us the problem