Lifevantage

A multi-role web app where operators draft replies to brand mentions scraped across LinkedIn, X, Facebook, YouTube, and Instagram, QA reviews and verifies them, and admins manage teams by country. Built with React, TypeScript, and Supabase, with AI relevance scoring to surface the mentions worth answering.

RoleFront-end Developer
Year2026
ClientLifewood Data Technology
Stack
React/TypeScript/Vite/Tailwind CSS/Framer Motion/React Router/Supabase
01

The problem.

Brands get mentioned across a dozen social platforms every day, but responding to those mentions is messy. Teams had no way to spot which mentions were worth a reply, no consistent process for writing on-brand responses, and no proof that the work actually happened. Replies slipped through the cracks, quality was uneven, and managers couldn't see who did what.

02

What I built.

LifeVantage gives every brand mention a clear path from "we found it" to "we replied, and here's the proof." Scraped posts become signals, operators draft replies, QA approves them, and the operator posts and uploads a screenshot for a final check.

Five-role pipeline, signals scored by AI, drafted by operators, QA-approved, and verified with screenshot proof

A few decisions I'm proud of:

Tech stack: React and TypeScript run the app, Supabase handles auth and data, Tailwind and Framer Motion shape the interface, and React Router manages the role-based access.

Key decisions

Role-based workflow : Five roles (operator, QA, admin, super admin, systems admin) each see only their part of the pipeline, and every signal moves through fixed stages so nothing gets lost.

AI relevance filtering : Signals get scored for intent and relevance, so operators spend time on real questions and testimonials instead of noise.

Proof and verification loop : Operators upload a screenshot after posting, and QA verifies it before the task is marked complete, which keeps the work accountable.

03

What I learned.

This project showed me how much a clear workflow matters once more than two people touch the same task. Building five different role views taught me to design around what each person actually needs to see, not just what data exists. If I revisited it, I'd add live notifications so operators and QA don't have to refresh to know a task moved forward.