option

ui-to-vue

affaan-m/ECC affaan-m/ECC

Convertissez par lots des captures d'écran de conception d'interface utilisateur en composants de l'API de composition Vue 3 à l'aide de Vant, Element Plus ou Ant Design Vue.

...Développer tout
0
Heure mise à jour 1 octobre 2026

UI vers Vue

Convertissez par lots des captures d’écran de conception d’interface utilisateur en code de composants Vue 3 Composition API.

Quand l'utiliser

  • L'utilisateur fournit un répertoire contenant des captures d'écran de conception ou des images exportées à partir de la conception.
  • L'application cible est Vue 3.
  • L’utilisateur souhaite obtenir une première ébauche des composants de page, des composants partagés et du câblage du routeur.
  • L’utilisateur spécifie Vant, Element Plus ou Ant Design Vue comme bibliothèque de composants.

Quand ne pas l'utiliser

  • L’utilisateur ne dispose que d’une seule capture d’écran et souhaite un composant sur mesure.
  • Le projet cible n'est pas Vue.
  • La conception nécessite une logique d'interaction détaillée, un flux de données ou une vérification de l'accessibilité.
  • Les captures d’écran contiennent des données clients confidentielles qui ne peuvent pas être envoyées à une API de modélisation externe.

Données d'entrée

Utilisez un répertoire d'entrée qui regroupe les captures d'écran par module et par état de page :

screenshots/
|-- HomePage/
|   |-- List/
|   |   |-- [email protected]
|   |   `-- cut-images/
|   |-- cut-images/
|   `-- [email protected]
`-- cut-images/

Les noms de répertoires d'images découpées pris en charge incluent assets, icons, sprites, cut, images, et cut-images.

Modèle de conversion

  • Regroupement des pages : regroupez les captures d’écran associées au sein d’un même composant de page lorsqu’elles représentent des états de liste, de détail, de formulaire, de chargement ou de page vide.
  • Mappage de la bibliothèque d’interface utilisateur : associez les éléments visuels natifs aux composants Vue de Vant, Element Plus ou Ant Design lorsque cela est possible.
  • Priorité des images découpées : privilégier les ressources au niveau de la page, puis celles au niveau du module, puis les ressources globales partagées.
  • Extraction de composants : extraire les zones d’interface utilisateur récurrentes pour en faire des composants partagés lorsqu’elles apparaissent plus d’une fois.

Utilisation de la CLI

Lancez le convertisseur avec npx afin que la commande documentée fonctionne sans dépendre d’un binaire global :

export DASHSCOPE_API_KEY=your_key
npx [email protected] --input ./screenshots --ui vant --output ./src

Pour les bibliothèques d’interface utilisateur de bureau :

npx [email protected] --input ./designs --ui element-plus --output ./src
npx [email protected] --input ./designs --ui antd-vue --output ./src

Si le paquet est installé globalement, le ui-to-vue binaire peut être utilisé directement :

npm install -g [email protected]
ui-to-vue --input ./screenshots --ui vant --output ./src

Options

Option Description Par défaut
--input Répertoire des images de conception ./screenshots
--ui Bibliothèque d'interface utilisateur : vant, element-plus, ou antd-vue vant
--output Répertoire de sortie ./src
--config Chemin d'accès au fichier de configuration ./.ui-to-vue.config.json

Gestion des clés API

Le convertisseur peut lire les identifiants DashScope à partir d’un fichier de configuration ou de l’environnement. Privilégiez une variable d’environnement dans les dépôts :

export DASHSCOPE_API_KEY=your_key

Si un fichier de configuration local est nécessaire, ne l'incluez pas dans le contrôle de version :

{
  "apiKey": "your_dashscope_key",
  "input": "./designs",
  "ui": "vant",
  "output": "./src"
}
.ui-to-vue.config.json

Sécurité et confidentialité

  • Considérez les captures d’écran de conception comme des données sources susceptibles d’être transmises à une API de modélisation externe.
  • N’exécutez pas ce flux sur des conceptions privées de clients sans autorisation.
  • Fixez la version du convertisseur dans les workflows reproductibles au lieu d’utiliser @latest.
  • Vérifiez le code Vue généré avant de le valider.
  • Ne validez pas .ui-to-vue.config.json, les clés API, les secrets générés ou les captures d'écran des clients.

Liste de contrôle pour la révision des résultats

  • Les composants de page ont été générés dans views/ ou dans le répertoire de sortie choisi.
  • Les zones d'interface utilisateur récurrentes ont été extraites dans components/ uniquement lorsque leur réutilisation est évidente.
  • La sortie du routeur est compatible avec le style de routeur du projet cible.
  • Les composants générés utilisent la bibliothèque d'interface utilisateur demandée de manière cohérente.
  • Les unités CSS générées respectent les normes de conception.
  • Le code a passé avec succès les tests du formateur, du linter, du vérificateur de types et de la compilation du projet.
  • Le texte de remplacement, les données factices et les ressources générées ont été vérifiés avant la validation.

Dépannage

Problème Vérifier
401 ou erreur d'authentification Vérifier DASHSCOPE_API_KEY est défini dans le shell exécutant la commande.
command not found: ui-to-vue Utilisez la npx [email protected] formulaire ou installez le paquet globalement.
Les images découpées sont ignorées Vérifiez que le nom du répertoire de ressources est pris en charge et qu’il se trouve dans le répertoire de la page ou du module correspondant.
Les composants ignorent la bibliothèque d’interface utilisateur demandée Relancez l'opération en spécifiant explicitement la --ui et examinez les importations générées.
Les dimensions de mise en page générées semblent incorrectes Vérifiez que la largeur d'exportation de la capture d'écran correspond à la ligne de base de la bibliothèque cible.

Références

  • Paquet npm : ui-to-vue-converter
Voir sur GitHub
---
name: ui-to-vue
description: Batch-convert UI design screenshots into Vue 3 Composition API components using Vant, Element Plus, or Ant Design Vue.
---

# UI To Vue

Batch-convert UI design screenshots into Vue 3 Composition API component code.

## When to Use

- The user provides a directory of design screenshots or design-export images.
- The target application is Vue 3.
- The user wants a first pass of page components, shared components, and router wiring.
- The user specifies Vant, Element Plus, or Ant Design Vue as the component library.

## When Not to Use

- The user has only one screenshot and wants a bespoke component.
- The target project is not Vue.
- The design requires detailed interaction logic, data flow, or accessibility review.
- The screenshots contain private customer data that cannot be sent to an external model API.

## Inputs

Use an input directory that groups screenshots by module and page state:

```text
screenshots/
|-- HomePage/
|   |-- List/
|   |   |-- [email protected]
|   |   `-- cut-images/
|   |-- cut-images/
|   `-- [email protected]
`-- cut-images/
```

Supported cut-image directory names include `assets`, `icons`, `sprites`, `cut`, `images`, and `cut-images`.

## Conversion Model

- Page grouping: combine related screenshots into one page component when they represent list, detail, form, loading, or empty states.
- UI library mapping: map native visual elements to Vant, Element Plus, or Ant Design Vue components where practical.
- Cut-image priority: prefer page-level assets, then module-level assets, then global shared assets.
- Component extraction: extract repeated UI regions into shared components when they appear more than once.

## CLI Usage

Run the converter with `npx` so the documented command works without relying on a global binary:

```bash
export DASHSCOPE_API_KEY=your_key
npx [email protected] --input ./screenshots --ui vant --output ./src
```

For desktop UI libraries:

```bash
npx [email protected] --input ./designs --ui element-plus --output ./src
npx [email protected] --input ./designs --ui antd-vue --output ./src
```

If the package is installed globally, the `ui-to-vue` binary can be used directly:

```bash
npm install -g [email protected]
ui-to-vue --input ./screenshots --ui vant --output ./src
```

## Options

| Option | Description | Default |
| --- | --- | --- |
| `--input` | Design image directory | `./screenshots` |
| `--ui` | UI library: `vant`, `element-plus`, or `antd-vue` | `vant` |
| `--output` | Output directory | `./src` |
| `--config` | Config file path | `./.ui-to-vue.config.json` |

## API Key Handling

The converter can read DashScope credentials from a config file or from the environment. Prefer an environment variable in repositories:

```bash
export DASHSCOPE_API_KEY=your_key
```

If a local config file is required, keep it out of version control:

```json
{
  "apiKey": "your_dashscope_key",
  "input": "./designs",
  "ui": "vant",
  "output": "./src"
}
```

```gitignore
.ui-to-vue.config.json
```

## Security and Privacy

- Treat design screenshots as source material that may be sent to an external model API.
- Do not run this flow on private customer designs without permission.
- Pin the converter version in repeatable workflows instead of using `@latest`.
- Review generated Vue code before committing it.
- Do not commit `.ui-to-vue.config.json`, API keys, generated secrets, or customer screenshots.

## Output Review Checklist

- [ ] Page components were generated under `views/` or the chosen output directory.
- [ ] Repeated UI regions were extracted into `components/` only when reuse is clear.
- [ ] Router output is compatible with the target project's router style.
- [ ] Generated components use the requested UI library consistently.
- [ ] Generated CSS units match the design baseline.
- [ ] The code passes the project's formatter, linter, type checker, and build.
- [ ] Placeholder copy, mock data, and generated assets were reviewed before commit.

## Troubleshooting

| Issue | Check |
| --- | --- |
| `401` or authentication error | Confirm `DASHSCOPE_API_KEY` is set in the shell running the command. |
| `command not found: ui-to-vue` | Use the `npx [email protected]` form or install the package globally. |
| Cut images are ignored | Confirm the asset directory name is supported and nested under the matching page or module. |
| Components ignore the requested UI library | Re-run with an explicit `--ui` value and inspect the generated imports. |
| Generated layout dimensions look wrong | Confirm the screenshot export width matches the target library baseline. |

## References

- npm package: `ui-to-vue-converter`

Tous les fichiers

1 fichiers

Installer ui-to-vue

Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.

Télécharger le ZIP

Clonez le dépôt et copiez les fichiers de compétence dans votre projet.

git clone https://github.com/affaan-m/ECC/tree/main/skills/ui-to-vue # Copy SKILL.md to your .claude/skills/ directory

Copier Copier
Configuration rapide: Copiez le dossier de la compétence dans .claude/skills/ Claude détectera automatiquement la compétence et l'utilisera
Dépôt affaan-m/ECC

Compétences similaires

github-code-search
Heure mise à jour 29 juin 2026
drizzle-orm
Heure mise à jour 29 juin 2026
prisma-client-api
Heure mise à jour 29 juin 2026
clickhouse-io
Heure mise à jour 29 juin 2026
OR