SkinSync is an AI-powered makeup recommendation platform that analyzes your skin tone, undertone, and features to provide personalized makeup product suggestions. Under the hood, this app uses Llama API to access Llama-4-Maverick-17B-128E-Instruct-FP8 LLM, which helps understand the face skin's characteristics.
Read the blog post here to know more about this app: https://samselvanathan.com/posts/vibe-coding-with-llama-api/
-
Real-time Skin Analysis: Capture your photo and get instant analysis of your:
- Skin undertone (warm/cool/neutral)
- Complexion type (fair to dark)
- Skin characteristics
-
Smart Product Matching: Get personalized recommendations for:
- Foundation
- Concealer
- Compact Powder
- Setting Powder
- Blush
- Highlighter
-
Privacy-First: Your photos are analyzed instantly and never stored
-
Beautiful UI: Modern, responsive interface with smooth animations
- Frontend: React 18 with TypeScript
- Styling: Tailwind CSS
- State Management: Zustand
- Animation: Framer Motion
- Camera Integration: React Webcam
- Database: Supabase
- AI Analysis: Custom Llama model via Edge Functions
-
Clone the repository
-
Install dependencies:
npm install
-
Create a
.envfile with your Supabase credentials:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key -
Start the development server:
npm run dev
src/
├── components/ # React components
├── hooks/ # Custom React hooks
├── lib/ # Utility libraries and APIs
├── services/ # Business logic and services
├── store/ # Global state management
└── utils/ # Helper functions
The application uses a Supabase database with the following main table:
id: UUID (Primary Key)category: Product categorybrand: Brand namename: Product namedescription: Product descriptioncolor_name: Color variant namecolor_code: Hex color codeundertone: Skin undertone matchcomplexion: Skin complexion matchpurchase_url: Product purchase linkimage_url: Product image URL
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
MIT License - feel free to use this project for learning, modification, and distribution.
- Icons by Lucide React
- UI components inspired by modern design principles