Skip to content

Anahi-Ortega/Wardrobe-AI

Repository files navigation

Wardrobe AI

Wardrobe AI is a personal wardrobe management and outfit recommendation application built with React, Vite, SQLite, and locally-hosted AI models through Ollama.

The application allows users to:

  • Build and manage a digital closet
  • Add clothing manually or through AI-assisted image analysis
  • Generate outfit recommendations based on available wardrobe items
  • Track clothing combinations and outfit history
  • Maintain complete ownership of wardrobe and AI data through local hosting

No cloud AI services or paid API subscriptions are required.


Features

Closet Management

  • Add, edit, and remove clothing items

  • Categorize items as:

    • Shirts / Tops
    • Pants
    • Shoes
  • Store:

    • Name
    • Color
    • Pattern
    • Style / Cut
    • Color swatch
    • Image

AI-Powered Clothing Analysis

Upload an image and allow a locally-hosted vision model to:

  • Identify clothing type
  • Estimate color
  • Detect patterns
  • Suggest clothing attributes

The user can review and correct AI-generated information before saving.

Outfit Generator

Generate outfit combinations using:

  • Current wardrobe inventory
  • Color harmony principles
  • Existing outfit history
  • Clothing availability

Recommendations are generated entirely through a self-hosted AI model.

Local Data Ownership

Wardrobe data is stored locally in SQLite.

Benefits:

  • No cloud storage required
  • Full data ownership
  • Fast performance
  • Offline functionality on local network

Technology Stack

Frontend

  • React
  • Vite
  • JavaScript

Backend

  • Node.js
  • Express

Database

  • SQLite

AI

  • Ollama
  • llama3 (text generation)
  • llava-llama3 (vision analysis)

Optional

  • Docker
  • Open WebUI

Folder Structure

wardrobe-ai/
│
├── src/
│   ├── api/
│   │   ├── aiClient.js
│   │   └── wardrobeApi.js
│   │
│   ├── App.jsx
│   └── main.jsx
│
├── server/
│   ├── server.cjs
│   ├── db.cjs
│   └── wardrobe.db
│
├── package.json
├── vite.config.js
└── README.md

Requirements

Software

Install:

  • Node.js 22+
  • Git
  • Ollama
  • Docker Desktop (optional)

Installation

1. Clone the Repository

git clone <repository-url>
cd wardrobe-ai

2. Install Frontend Dependencies

npm install

3. Install Backend Dependencies

npm install express cors sqlite3

4. Install Ollama

Download and install:

https://ollama.com

Verify installation:

ollama --version

5. Download AI Models

Text Model:

ollama pull llama3

Vision Model:

ollama pull llava-llama3

Verify:

ollama list

6. Start Ollama

ollama serve

7. Start Backend

From the project root:

npm run server

Expected output:

Wardrobe API running on port 3001
Connected to wardrobe database.

8. Start Frontend

Open a second terminal:

npm run dev

Expected output:

Local:
http://localhost:5173

Using on Other Devices

If devices are on the same Wi-Fi network:

Find your laptop IP:

ipconfig

Look for:

IPv4 Address

Example:

10.0.0.196

Open Wardrobe AI from another device:

http://10.0.0.196:5173

Examples:

  • Tablet
  • Android phone
  • iPhone
  • Secondary laptop

Data Storage

Wardrobe information is stored in:

server/wardrobe.db

This database contains:

  • Clothing items
  • Outfit history
  • Future application data

Backing up this file preserves the user's wardrobe.


AI Configuration

Current default models:

Text:
llama3

Vision:
llava-llama3

Configuration can be modified in:

src/api/aiClient.js

Future Roadmap

Planned features:

  • Outfit history analytics
  • AI feedback learning system
  • Shopping assistant mode
  • Remote access outside home network
  • User profiles
  • Cloud backup options
  • Mobile-first UI refinements
  • Wardrobe statistics dashboard

License

This project is intended for personal learning and development purposes.

Modify and extend as needed.

About

AI Wardrobe Assistant

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors