Web-based WYSIWYG UI designer for AI prompt generation
- TypeScript 95.1%
- Shell 4.2%
- JavaScript 0.3%
- HTML 0.2%
- CSS 0.2%
- Added useHistory hook with undo/redo stack (50 entries max) - Undo (Ctrl+Z) and Redo (Ctrl+Y / Ctrl+Shift+Z) keyboard shortcuts - Undo/Redo buttons in editor toolbar - Element resize handles (8 handles: 4 corners + 4 edges) - Duplicate button on selected elements - Ctrl+D to duplicate element - Ctrl+C/Ctrl+V copy/paste with clipboard |
||
|---|---|---|
| backend | ||
| docs | ||
| frontend | ||
| scripts | ||
| shared | ||
| .gitignore | ||
| README.md | ||
| setup-db.sh | ||
VibeDesigner
Ein web-basiertes WYSIWYG-Tool zum Designen von App-UIs, das strukturierte Prompts für KI-gestützte Code-Generierung erstellt.
Features
- 🎨 WYSIWYG Editor - Drag & Drop UI-Elemente auf einen Canvas
- 📝 Dual-Perspektive - Requirements (Kunde) + Technical (Entwickler) pro Element
- 🔧 Bootstrap 5 Elemente - Buttons, Cards, Forms, Navbar, Tables, etc.
- 📤 Prompt Export - Markdown, JSON oder Plain Text für KI-Tools
- 👥 Multi-User - Projekte mit Team teilen
- 🔐 Authentifizierung - JWT-basierte Anmeldung
Tech Stack
- Frontend: React 18, TypeScript, Vite, Tailwind CSS, Zustand, dnd-kit
- Backend: Express 5, TypeScript, Prisma 7
- Database: PostgreSQL
Installation
Voraussetzungen
- Node.js 20+
- PostgreSQL 15+
Setup
# Repository klonen
git clone https://github.com/YOURUSER/VibeDesigner.git
cd VibeDesigner
# PostgreSQL einrichten (Fedora/RHEL)
./setup-db.sh
# Backend
cd backend
npm install
cp .env.example .env # Anpassen!
npx prisma db push
cd ..
# Frontend
cd frontend
npm install
cd ..
Starten
# Terminal 1 - Backend
cd backend && npm run dev
# Terminal 2 - Frontend
cd frontend && npm run dev
Öffne http://localhost:5173
Projektstruktur
VibeDesigner/
├── frontend/ # React App
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── stores/
│ │ └── utils/
├── backend/ # Express API
│ ├── src/
│ │ ├── routes/
│ │ └── middleware/
│ └── prisma/
└── shared/ # Gemeinsame Types
Verwendung
- Login/Registrieren
- Projekt erstellen - Name und Beschreibung
- Screen hinzufügen - Pages, Modals, Drawers
- Elemente platzieren - Aus der Palette auf den Canvas ziehen
- Properties bearbeiten:
- Requirements Tab: Was soll das Element tun? (Kunden-Sicht)
- Technical Tab: API, Datenquelle, Validierung (Entwickler-Sicht)
- Style Tab: Bootstrap-Varianten
- Export Prompt - Für ChatGPT, Claude, Copilot, etc.
Lizenz
MIT