Mirror Me
A Flutter app that tries clothes on you with Gemini and gives styling advice, grown out of a 2022–23 virtual wardrobe project.
- Year
- 2023–26
- Role
- Solo: architecture, mobile app, backend
- Status
- Private · client
- Context
- Product
Results
5
tables under Row-Level Security
Full per-user data isolation
3
architecture layers
Data, Domain and Presentation, per feature
It started as a virtual wardrobe web app that matched outfits automatically and never repeated one. Mirror Me is the rebuild: a Flutter mobile app with realistic virtual try-ons and markdown-formatted styling advice, both powered by Gemini through the native google_generative_ai SDK.
The architecture is Clean Architecture with feature modules: separate Data, Domain and Presentation layers, BLoC for unidirectional state, GetIt for dependency injection, and Dartz Either types for type-safe error handling.
The backend is Supabase: auth sessions, multi-bucket storage for images, and five relational tables (users, wardrobe, user_images, tryon_results, recommendations), each locked down with Row-Level Security so every user’s data stays isolated.