--- title: Własny interfejs edytora description: Tworzenie własnego interfejsu edytora za pomocą provideEditor, CanvasRoot, menu, paneli i pasków narzędzi. --- # Własny interfejs edytora Typowa aplikacja OpenPencil oparta na Vue składa się z trzech warstw: 1. `@open-pencil/core` tworzy edytor; 2. `@open-pencil/vue` łączy go z composables i komponentami Vue bez narzuconego wyglądu; 3. aplikacja określa układ, wygląd i zachowanie właściwe dla produktu. ## Dlaczego warto rozdzielić te warstwy Gotowa aplikacja OpenPencil jest tylko jednym z możliwych interfejsów. Na podstawie SDK można utworzyć edytor osadzony w innym produkcie, wewnętrzne narzędzie do pracy z zasobami, edytor szablonów, interfejs do adnotacji albo wyspecjalizowany edytor z obsługą AI. ## Zalecana struktura Wygodny interfejs zwykle: - wywołuje `provideEditor()` wysoko w drzewie komponentów; - umieszcza obszar roboczy pośrodku; - pokazuje strony i warstwy na jednym panelu bocznym; - pokazuje właściwości na drugim panelu; - steruje menu i paskami narzędzi za pomocą composables. ## Przykład ```vue ``` ## Odpowiedzialność SDK i aplikacji - SDK odpowiada za integrację z edytorem i logikę niezależną od wyglądu, przeznaczoną do ponownego użycia. - Aplikacja odpowiada za układ, wygląd i operacje właściwe dla konkretnego produktu. - Composables pozwalają podłączać menu i panele bez zbędnych komponentów opakowujących. ## Zobacz też - [provideEditor](../api/composables/provide-editor) - [useCanvas](../api/composables/use-canvas) - [ToolbarRoot](../api/components/toolbar-root) - [PageListRoot](../api/components/page-list-root) - [LayerTreeRoot](../api/components/layer-tree-root)