An awesome virtual try-on app!
View Demo · Report Bug · Request Feature
Table of Contents
- Virtual fitting room, allowing users to try clothes on personal photos thanks to AI technology that creates realistic simulations
- Suitable clothing suggestions, providing product recommendations based on fashion style, color, and existing wardrobe
- Shopping integration, making it easy for users to order through e-commerce platforms after trying on clothes
- StyleMate, an AI virtual assistant providing information on fashion trends, outfit combination suggestions, and optimizing the shopping experience.
With these features, EasyFit not only brings a more intuitive experience but also optimizes the process from trying on clothes to purchasing, making it more convenient for users and reducing risks when shopping online. 🚀
- Node.js and npm/yarn
- Expo CLI (
npm install -g expo-cli) - Python 3.10+ and pip
- Conda (optional, for managing Python environments)
- Git
Backend (Server):
- Clone the repo:
git clone https://github.com/Page0526/virtual-try-on.git cd virtual-try-on - Navigate to the server directory:
cd server - Create and activate a Python environment (using Conda): (Or use
conda create --name easyfit-env python=3.10 conda activate easyfit-env
python -m venv venvandsource venv/bin/activate/venv\Scripts\activate) - Install Python dependencies:
pip install -r requirements.txt
- Set up environment variables (e.g., Supabase keys, Google API key). You might need a
.envfile in theserverdirectory. Refer toserver/config/setting.py.# Example .env content (replace with actual values) SUPABASE_URL=YOUR_SUPABASE_URL SUPABASE_KEY=YOUR_SUPABASE_ANON_KEY # Add other required keys (like Google API Key if needed by backend features)
- Run the FastAPI server: (Ensure you are in the
uvicorn main:app --reload --host 0.0.0.0 --port 8000
serverdirectory)
Frontend (Client):
- Navigate to the client directory (from the project root):
cd ../client - Install Node.js dependencies: (or
npm install
yarn install) - Set up environment variables for the client if needed (e.g., Clerk keys). Refer to the code using
process.env. You might need a.envfile in theclientdirectory.# Example .env content (replace with actual values if used) EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY=YOUR_CLERK_KEY
- Start the Expo development server:
npx expo start
- Follow the instructions in the terminal to open the app on a simulator/emulator or physical device using the Expo Go app.
Get to the try-on screen and start try on whatever clothes you want!
See the open issues for a full list of proposed features (and known issues).
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request

