Inspiration

I have locs! Using a lot of different hair care apps, a lot didn't include locs or have any dedicated locs section. So I created Locy to solve that problem.

What it does

Locy is a personalized loc-care and journey-tracking app. Users can track their growth with progress photos and videos organized by month and loc stage. Compare older and newer photos to see changes over time. Receive an AI-assisted read of their locs and scalp, with the user confirming observations before they are saved. Build care routines and schedule washes, moisturizing, oiling, and retwists. Ask an AI companion questions based on their loc profile and routine. Scan hair products or paste product links to receive a loc-specific ingredient score. Save products to a personal library and connect them to routines. Explore educational content personalized to their current stage

How I built it

I built Locy as a cross-platform mobile app using Expo, React Native, TypeScript, and Expo Router. Zustand manages client-side state, while Supabase provides authentication, PostgreSQL storage, photo storage, row-level security, and serverless Edge Functions. OpenAI powers Locy’s multimodal photo analysis, product identification, and streamed AI conversations. The companion receives relevant context such as the user’s loc stage, routine, climate, and porosity so its guidance feels personal instead of generic. We used React Native Skia and Reanimated to create Locy’s organic visual identity and motion system. RevenueCat manages subscriptions, while a resilient local queue synchronizes user activity with the backend when connectivity returns.

Challenges I ran into

Our biggest challenge was building the catalog of products and good accuracy. Hair and scalp images can be ambiguous, so Locy presents observations for confirmation instead of treating model output as unquestionable fact.

Accomplishments that we're proud of

I am very proud of being able to build something for people like me and fill a underserved community.

What I learned

We learned that useful personalization depends as much on context and memory as it does on the AI model itself. A simple answer becomes much more valuable when it understands the user’s stage, routine, hair characteristics, and environment.

Built With

Share this project:

Updates

Submission history