- Wrap all enum values in backticks (FRAME, SOLID, ROUND, etc.) - Fix single-backtick code blocks → triple backticks in node-types, scene-graph - Replace ASCII diagrams with mermaid in file-format - Delete stale mcp-tools.md and eval-command.md from all locales - Update dead links: /reference/mcp-tools → /programmable/mcp-server, /eval-command → /programmable/cli/scripting
70 lines
3.3 KiB
Markdown
70 lines
3.3 KiB
Markdown
# Fahrplan
|
|
|
|
## Phasen
|
|
|
|
### Phase 1: Core-Engine ✅
|
|
|
|
`SceneGraph`, Skia-Rendering, Grundformen, Auswahl, Zoom/Pan, Rückgängig/Wiederherstellen, Fanglinien.
|
|
|
|
### Phase 2: Editor-UI + Layout ✅
|
|
|
|
Vue 3 + Reka UI Panels, Eigenschaften, Ebenen, Werkzeugleiste, Yoga Auto-Layout, Inline-Textbearbeitung, Canvas-Lineale.
|
|
|
|
### Phase 3: Datei-I/O + Visuelle Features ✅
|
|
|
|
.fig Import/Export, Kiwi-Codec, Zwischenablage, Stiftwerkzeug, Vektornetzwerke, Gruppen, Tauri v2 Desktop, Sektionen, Mehrseiten, Hover-Hervorhebung, Tier-1-Rendering (Verläufe, Bilderfüllungen, Effekte, Kontur-Eigenschaften, Bögen).
|
|
|
|
### Phase 4: Komponenten + Variablen ✅
|
|
|
|
Komponenten, Instanzen, Overrides, Komponenten-Sets, Variablen (`COLOR`/FLOAT/STRING/BOOLEAN), Sammlungen, Modi, Bildexport, Kontextmenü, Rich-Text-Formatierung.
|
|
|
|
### Phase 5: KI-Integration & Werkzeuge ✅
|
|
|
|
**Geliefert:**
|
|
- @open-pencil/core extrahiert in packages/core/ (keine DOM-Abhängigkeiten)
|
|
- @open-pencil/cli mit headless .fig-Operationen (info, tree, find, export, analyze, node, pages, variables, eval)
|
|
- `eval`-Befehl mit Figma-kompatibler Plugin API für Headless-Skripting
|
|
- KI-Chat: OpenRouter-Direktverbindung, 87 Werkzeuge in `packages/core/src/tools/`, Modellauswahl, <kbd>⌘</kbd><kbd>J</kbd>
|
|
- 49 zusätzliche KI/MCP-Werkzeuge portiert von figma-use (75 gesamt)
|
|
- MCP-Server (@open-pencil/mcp): stdio + HTTP, 87 Core-Tools + 3 Dateiverwaltungs-Tools
|
|
- Vereinheitlichte Werkzeugdefinitionen: einmal in `packages/core/src/tools/` definieren, für KI-Chat (valibot), MCP (zod), CLI (eval) adaptieren
|
|
- App-Menüleiste für Browser-Modus (Datei, Bearbeiten, Ansicht, Objekt, Text, Anordnen)
|
|
- Automatisches Speichern: 3s Debounce nach letzter Szenenänderung
|
|
- Multi-Selektion-Eigenschaftspanel mit gemeinsamen/gemischten Werten
|
|
- npm-Veröffentlichung mit Provenance für core, cli und mcp
|
|
|
|
**Geplant:**
|
|
- Attached Mode: WebSocket zum laufenden Editor
|
|
- Design-Guidelines-System
|
|
- Screenshot-Verification-Loop
|
|
|
|
### Phase 6: Kollaboration + Distribution 🟡
|
|
|
|
**Geliefert:**
|
|
- P2P-Kollaboration über Trystero (WebRTC) + Yjs CRDT — kein Server-Relay
|
|
- Awareness-Protokoll: Live-Cursor, Auswahlen, Präsenz
|
|
- Folgemodus: Klick auf Peer-Avatar zum Viewport-Folgen
|
|
- Lokale Persistenz über y-indexeddb
|
|
- Effekt-Rendering: Schlagschatten, innerer Schatten, Ebenen-/Hintergrund-/Vordergrund-Unschärfe
|
|
- Multi-Datei-Tabs: <kbd>⌘</kbd><kbd>N</kbd>/<kbd>⌘</kbd><kbd>T</kbd> neuer Tab, <kbd>⌘</kbd><kbd>W</kbd> schließen, <kbd>⌘</kbd><kbd>O</kbd> öffnen
|
|
- Apple Code-Signierung und Notarisierung für macOS
|
|
- Linux-Builds (x64) in CI hinzugefügt
|
|
- VitePress-Dokumentationsseite mit i18n (6 Sprachen)
|
|
|
|
**Geplant:**
|
|
- Prototyping (Frame-Verbindungen, Übergänge, Animationen)
|
|
- Kommentare (Pin, Threads, Auflösen)
|
|
- PWA-Unterstützung
|
|
- Varianten-Switching, `FLOAT`/STRING/BOOLEAN Variable UI, variablengesteuertes Theming
|
|
|
|
## Zeitplan
|
|
|
|
| Phase | Geschätzte Dauer | Status |
|
|
|-------|-----------------|--------|
|
|
| Phase 1: Core-Engine | 3 Monate | ✅ Abgeschlossen |
|
|
| Phase 2: Editor-UI + Layout | 3 Monate | ✅ Abgeschlossen |
|
|
| Phase 3: Datei-I/O + Visuelle Features | 2 Monate | ✅ Abgeschlossen |
|
|
| Phase 4: Komponenten + Variablen | 2 Monate | ✅ Abgeschlossen |
|
|
| Phase 5: KI-Integration & Werkzeuge | 2 Monate | ✅ Abgeschlossen |
|
|
| Phase 6: Kollaboration + Distribution | 2 Monate | 🟡 In Arbeit |
|