Option

ui-to-vue

affaan-m/ECC affaan-m/ECC

Konvertieren Sie Screenshots von UI-Designs mithilfe von Vant, Element Plus oder Ant Design Vue stapelweise in Komponenten der Vue 3 Composition API.

...Alle erweitern
0
Zeit aktualisiert 1. Oktober 2026

UI zu Vue

UI-Design-Screenshots im Stapelverfahren in Vue 3 Composition API-Komponentencode konvertieren.

Anwendungsfälle

  • Der Benutzer stellt ein Verzeichnis mit Design-Screenshots oder exportierten Design-Bildern bereit.
  • Die Zielanwendung ist Vue 3.
  • Der Benutzer wünscht sich einen ersten Entwurf der Seitenkomponenten, der gemeinsam genutzten Komponenten und der Router-Verkabelung.
  • Der Benutzer gibt Vant, Element Plus oder Ant Design Vue als Komponentenbibliothek an.

Wann sollte diese Funktion nicht verwendet werden?

  • Der Nutzer hat nur einen Screenshot und möchte eine maßgeschneiderte Komponente.
  • Das Zielprojekt ist nicht Vue.
  • Das Design erfordert eine detaillierte Interaktionslogik, einen detaillierten Datenfluss oder eine Barrierefreiheitsprüfung.
  • Die Screenshots enthalten vertrauliche Kundendaten, die nicht an eine externe Modell-API gesendet werden dürfen.

Eingaben

Verwenden Sie ein Eingabeverzeichnis, das Screenshots nach Modul und Seitenzustand gruppiert:

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

Zu den unterstützten Verzeichnisnamen für Bildausschnitte gehören assets, icons, sprites, cut, imagessowie cut-images.

Konversionsmodell

  • Seitengruppierung: Kombinieren Sie verwandte Screenshots zu einer Seitenkomponente, wenn sie Listen-, Detail-, Formular-, Lade- oder Leerstandszustände darstellen.
  • Zuordnung zur UI-Bibliothek: Ordnen Sie native visuelle Elemente nach Möglichkeit Vant-, Element Plus- oder Ant Design Vue-Komponenten zu.
  • Priorität der Ausschnitte: Bevorzugen Sie Assets auf Seitenebene, dann Assets auf Modulebene und schließlich global gemeinsam genutzte Assets.
  • Komponentenextraktion: Extrahieren Sie sich wiederholende UI-Bereiche in gemeinsam genutzte Komponenten, wenn sie mehr als einmal vorkommen.

Verwendung der CLI

Führen Sie den Konverter mit npx , damit der dokumentierte Befehl ohne Abhängigkeit von einer globalen Binärdatei funktioniert:

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

Für Desktop-UI-Bibliotheken:

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

Wenn das Paket global installiert ist, kann die ui-to-vue Binärdatei direkt verwendet werden:

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

Optionen

Option Beschreibung Standard
--input Verzeichnis für Designbilder ./screenshots
--ui UI-Bibliothek: vant, element-plusoder antd-vue vant
--output Ausgabeverzeichnis ./src
--config Pfad zur Konfigurationsdatei ./.ui-to-vue.config.json

Verwaltung von API-Schlüsseln

Der Konverter kann DashScope-Anmeldedaten aus einer Konfigurationsdatei oder aus der Umgebung lesen. Verwenden Sie in Repositories vorzugsweise eine Umgebungsvariable:

export DASHSCOPE_API_KEY=your_key

Falls eine lokale Konfigurationsdatei erforderlich ist, sollte diese nicht in die Versionskontrolle aufgenommen werden:

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

Sicherheit und Datenschutz

  • Behandeln Sie Design-Screenshots als Ausgangsmaterial, das an eine externe Modell-API gesendet werden kann.
  • Führen Sie diesen Workflow nicht ohne Genehmigung bei privaten Kundendesigns aus.
  • Fixieren Sie die Konverter-Version in wiederholbaren Workflows, anstatt @latest.
  • Überprüfen Sie den generierten Vue-Code, bevor Sie ihn committen.
  • Führen Sie kein Commit durch .ui-to-vue.config.json, API-Schlüssel, generierte Geheimnisse oder Kunden-Screenshots.

Checkliste zur Überprüfung der Ausgabe

  • Die Seitenkomponenten wurden unter views/ oder dem ausgewählten Ausgabeverzeichnis generiert.
  • Wiederkehrende UI-Bereiche wurden components/ nur dann extrahiert, wenn eine Wiederverwendung eindeutig ist.
  • Die Router-Ausgabe ist mit dem Router-Stil des Zielprojekts kompatibel.
  • Die generierten Komponenten verwenden die angeforderte UI-Bibliothek konsistent.
  • Die generierten CSS-Einheiten entsprechen den Designvorgaben.
  • Der Code durchläuft den Formatter, den Linter, den Typ-Checker und den Build des Projekts erfolgreich.
  • Platzhaltertexte, Scheindaten und generierte Assets wurden vor dem Commit überprüft.

Fehlerbehebung

Problem Überprüfen Sie
401 oder Authentifizierungsfehler Überprüfen Sie, DASHSCOPE_API_KEY in der Shell, in der der Befehl ausgeführt wird, eingestellt ist.
command not found: ui-to-vue Verwenden Sie die npx [email protected] Formular oder installieren Sie das Paket global.
Ausgeschnittene Bilder werden ignoriert Stellen Sie sicher, dass der Name des Asset-Verzeichnisses unterstützt wird und unter der entsprechenden Seite oder dem entsprechenden Modul verschachtelt ist.
Komponenten ignorieren die angeforderte UI-Bibliothek Führen Sie den Vorgang mit einem expliziten --ui Wert und überprüfen Sie die generierten Importe.
Die generierten Layout-Abmessungen scheinen falsch zu sein Stellen Sie sicher, dass die Breite des Screenshot-Exports mit der Basislinie der Zielbibliothek übereinstimmt.

Referenzen

  • npm-Paket: ui-to-vue-converter
Auf GitHub ansehen
---
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`

Alle Dateien

1 Dateien

ui-to-vue installieren

Laden Sie die Skill-Dateien herunter und entpacken Sie sie in Ihr Verzeichnis „.claude/skills/“.

ZIP herunterladen

Klonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.

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

Kopieren Kopieren
Schnelle Einrichtung: Kopiere den Skill-Ordner nach .claude/skills/ Claude erkennt den Skill automatisch und nutzt ihn.
Repository affaan-m/ECC

Ähnliche Skills

github-code-search
Zeit aktualisiert 29. Juni 2026
drizzle-orm
Zeit aktualisiert 29. Juni 2026
prisma-client-api
Zeit aktualisiert 29. Juni 2026
clickhouse-io
Zeit aktualisiert 29. Juni 2026
OR