Your Personal Fashion AI Assistant
Scan your closet with AI β’ Get outfit recommendations β’ Virtual try-on β’ 100% Private & Encrypted
- Overview
- Features
- Technology Stack
- Architecture
- Getting Started
- Backend Setup
- iOS App Setup
- Daytona Deployment
- API Documentation
- Privacy & Security
- Demo
- License
AI Closet Scanner is a privacy-first wardrobe management app that uses cutting-edge AI to help you:
- πΈ Scan & Analyze clothing items with computer vision
- π Generate Outfits based on occasion, weather, and style
- π¨ Virtual Try-On to see how outfits look before wearing them
- π£οΈ Voice Recommendations with natural-sounding style advice
- βοΈ Cloud Backup with end-to-end encryption
"I have nothing to wear!" - Despite having a full closet, we often struggle to:
- Remember what we own
- Create cohesive outfits
- Match items appropriately
- Dress for the occasion
AI-powered wardrobe management that:
- β Automatically catalogs your closet
- β Suggests outfits based on context
- β Shows you how outfits look before getting dressed
- β Keeps all your data private and encrypted
- Upload photos of clothing items
- Get detailed analysis: type, color, pattern, style, seasonality
- Automatic pairing suggestions
- Material and care instructions
- Context-aware outfit suggestions
- Weather integration
- Occasion-based recommendations
- Color harmony analysis
- Alternative suggestions
- See how outfits look on you before wearing them
- Photorealistic visualization
- Multiple item combinations
- Background removal for clean images
- Natural-sounding voice guidance
- Personalized styling tips
- Multi-language support
- Downloadable audio recommendations
- Local encryption (AES-256-GCM)
- Keys stored in iOS Keychain
- Optional cloud backup to Tigris
- No tracking, no data selling
- Instant development environment
- Zero DevOps setup
- Live deployment
- Collaborative workspace
| Service | Purpose | Integration |
|---|---|---|
| π€ Claude (Anthropic) | Fashion analysis & outfit generation | Vision API + Text generation |
| π£οΈ ElevenLabs | Voice recommendations | Text-to-speech |
| π Nano Banana (Gemini) | Virtual try-on image generation | Gemini 2.0 Flash |
| βοΈ Tigris | Encrypted cloud storage | S3-compatible storage |
| π³ Brex | Premium subscriptions | Payment processing |
| π Galileo | LLM observability | Request tracing |
| π Daytona | Cloud development platform | Workspace hosting |
- FastAPI - Modern async web framework
- Anthropic SDK - Claude API integration
- ElevenLabs SDK - TTS integration
- Google Generative AI - Gemini integration
- Boto3 - S3/Tigris storage
- Galileo Observe - LLM monitoring
- Swift - Native iOS development
- SwiftUI - Modern declarative UI
- CryptoKit - AES-256-GCM encryption
- Core Data - Local data persistence
- Keychain - Secure key storage
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β iOS APP (Swift/SwiftUI) β
β β’ Camera capture β
β β’ Local encryption (AES-256-GCM) β
β β’ Core Data storage β
β β’ Calls backend API β
ββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ
β
β HTTPS
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β BACKEND API (Python/FastAPI) β
β π HOSTED ON DAYTONA β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β AI Service Integrations: β β
β β β’ Claude API (Anthropic) β β
β β β’ ElevenLabs API β β
β β β’ Nano Banana (Gemini API) β β
β β β’ Tigris S3 Storage β β
β β β’ Galileo LLM Tracing β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
iOS App (Local):
- Privacy-first: data encrypted locally
- Offline functionality
- Fast, responsive UI
- Native iOS experience
Backend on Daytona:
- Heavy AI processing in the cloud
- API aggregation (one backend, multiple AI services)
- Monitoring with Galileo
- Easy to demo and scale
-
Backend:
- Python 3.11+
- Daytona account (for deployment)
- API keys (see below)
-
iOS:
- macOS with Xcode 15+
- iOS 17+ simulator or device
- Apple Developer account (for device testing)
You'll need API keys from the following services:
- Anthropic Claude: https://console.anthropic.com/
- ElevenLabs: https://elevenlabs.io/
- Google Gemini: https://makersuite.google.com/app/apikey
- Tigris: https://console.tigris.dev/
- Galileo: https://console.galileo.ai/
Optional: 6. Brex: https://developer.brex.com/
git clone https://github.com/your-username/closet-scanner.git
cd closet-scanner/backend-apipython3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activatepip install -r requirements.txtcp .env.example .envEdit .env and add your API keys:
# Anthropic (Claude)
ANTHROPIC_API_KEY=sk-ant-api03-your-key-here
# ElevenLabs
ELEVENLABS_API_KEY=your_elevenlabs_key
# Google Gemini
GEMINI_API_KEY=your_gemini_key
# Tigris
TIGRIS_ACCESS_KEY=tid_your_access_key
TIGRIS_SECRET_KEY=tsec_your_secret_key
# Galileo
GALILEO_API_KEY=your_galileo_key
# Application
BACKEND_URL=http://localhost:8000cd backend-api
uvicorn app.main:app --reloadThe API will be available at: http://localhost:8000
- API Docs: http://localhost:8000/docs
- Health Check: http://localhost:8000/health
- Dashboard: http://localhost:8000/dashboard
open ClosetAI.xcodeprojEdit ClosetAI/Services/APIClient.swift:
// Change this to your Daytona backend URL
private let baseURL = "https://your-daytona-url.daytona.app"- Select a simulator or device
- Press
Cmd + Rto build and run
curl -sf https://download.daytona.io/daytona/install.sh | shdaytona logindaytona create --name closet-scanner-backend \
--from-git https://github.com/your-username/closet-scannerIn the Daytona dashboard, add your API keys as secrets.
daytona code closet-scanner-backendInside the Daytona workspace:
cd backend-api
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000daytona url closet-scanner-backendThis will return your public URL: https://closet-scanner-backend-xxx.daytona.app
Update the iOS app's APIClient.swift with this URL.
GET /
GET /health
POST /analyze-clothing
Content-Type: multipart/form-data
Request:
- file: Image file (JPEG, PNG)
Response:
{
"type": "shirt",
"color": "blue",
"pattern": "solid",
"style": "casual",
"season": ["spring", "summer"],
"pairs_well_with": ["jeans", "chinos"],
"confidence": 0.95
}
POST /generate-outfit
Content-Type: application/json
Request:
{
"wardrobe_items": [...],
"occasion": "work",
"weather": {"temperature": 72, "condition": "sunny"}
}
Response:
{
"items": [...],
"reasoning": "...",
"style_tips": "...",
"audio_url": "https://..."
}
POST /virtual-tryon
Content-Type: application/json
Request:
{
"user_image_base64": "...",
"clothing_items_base64": [...]
}
Response: PNG image
For complete API documentation, visit: http://your-backend-url/docs
All user data is encrypted using AES-256-GCM:
- Encryption keys stored securely in iOS Keychain
- Data encrypted before leaving the device
- Only user has access to decryption keys
If user enables cloud backup:
- Data is already encrypted before upload
- Stored in Tigris S3-compatible storage
- No one (including us) can decrypt without the key
- No analytics
- No user profiling
- No data selling
- No third-party tracking
[Add screenshots here]
[Add video demo link here]
Visit the live metrics dashboard: http://your-backend-url/dashboard
MIT License - see LICENSE file for details
Built with amazing technologies from:
- Anthropic (Claude AI)
- ElevenLabs (Voice AI)
- Google (Gemini AI)
- Tigris (Cloud Storage)
- Galileo (LLM Observability)
- Daytona (Cloud Development)
- Brex (Payments)
Have questions? Found a bug? Want to contribute?
- GitHub Issues: github.com/your-username/closet-scanner/issues
- Email: your-email@example.com
Made with β€οΈ for the Hackathon
Empowering personal style with AI, while respecting privacy.