---
title: Начало работы с SDK
description: Настройка @open-pencil/vue с createEditor, provideEditor и холстом.
---
# Начало работы с SDK
## Установка
```bash
bun add @open-pencil/core @open-pencil/vue canvaskit-wasm
```
SDK находится в монорепозитории и также опубликован как `@open-pencil/vue`.
```ts
import { createEditor } from '@open-pencil/core/editor'
import { provideEditor, useCanvas } from '@open-pencil/vue'
```
## Концептуальная модель
Три уровня:
1. `@open-pencil/core` — не зависящий от фреймворка движок редактора
2. `@open-pencil/vue` — Vue-компосаблы и headless-примитивы
3. ваше приложение — стили, маршрутизация, файловые потоки, UI под конкретный продукт
## Минимальная настройка
### 1. Создайте редактор
```ts
import { createEditor } from '@open-pencil/core/editor'
const editor = createEditor({
width: 1200,
height: 800,
})
```
### 2. Передайте его в Vue
```vue
```
Это слой-провайдер для дерева редактора. В документации предпочтителен вызов `provideEditor()` напрямую — это актуальная поверхность API.
### 3. Подключите холст
```vue
```
## Использование компосаблов
После того как редактор передан через провайдер, дочерние компоненты могут читать выделение и вызывать команды:
```ts
import { useEditorCommands, useSelectionState } from '@open-pencil/vue'
const selection = useSelectionState()
const commands = useEditorCommands()
```
## Базовый пример
```vue