Beautiful, responsive UI for an AI-powered clothing design tool. Enter a natural-language prompt (e.g. “Generate a blue evening gown with lace sleeves and a long train”) and tweak details like color, pattern, sleeves, neckline, fabric texture, train length, and skirt volume. Save variants, preview, and export as SVG/PNG — all client-side.
- Prompt-based param extraction (simple heuristic parser)
- Real-time vector mock-up with SVG (bodice, sleeves, skirt, train)
- Patterns (solid, stripes, polka, floral, lace)
- Fabric textures (silk, satin, lace, velvet, chiffon) via SVG filters
- Controls: color, sleeve length, neckline, train, texture intensity, skirt volume
- Save variants with thumbnails and one-click restore
- Export current design to SVG or PNG
- Light/Dark theme toggle
npm install
npm run devThen open the URL from the console (usually http://localhost:5173).
Build for production:
npm run build
npm run previewsrc/App.jsx— Main composition and state wiringsrc/components/Header.jsx— Top navbar with theme togglesrc/components/PromptBar.jsx— Prompt input and generate actionsrc/components/CustomizerPanel.jsx— Controls for parameterssrc/components/Preview.jsx— SVG preview, export buttonssrc/components/VariantsTray.jsx— Saved variants stripsrc/utils/dressGenerator.jsx— SVG generator for the dresssrc/utils/promptParser.js— Heuristic mapping of prompt → params
- This is a frontend-only prototype; there’s no real AI model call. The prompt is parsed with keyword heuristics and mapped to visual parameters.
- The SVG silhouette is intentionally stylized to serve as a quick mock-up.
- Tailwind v4 utilities are used via
@tailwindcss/viteand@import "tailwindcss"insrc/index.css.
A single shared theme file is available at src/styles/theme.css.
-
Edit the CSS variables at the top of
src/styles/theme.cssto change application-wide colors and tokens (primary color, background, text, etc.). -
You can use the CSS variables directly in components, for example:
- Inline style in JSX:
style={{ color: 'var(--color-primary)' }} - In CSS:
.my-class { background: var(--color-surface); color: var(--color-text); }
- Inline style in JSX:
-
A few helper classes are provided (e.g.,
bg-primary,text-primary,btn-primary).
Because src/index.css imports src/styles/theme.css, the variables are available
throughout the app after the initial import in src/main.jsx.