---
metadata:
  - name: generator
    content: Diplodoc Platform v5.54.5
  - property: og:type
    content: article
  - property: article:section
    content: Платформа плагинов
  - property: og:title
    content: Инструменты разработчика
  - property: article:tag
    content: Сборник инструкций
alternate:
  - https://yandex.ru/support/tracker/en/plugins/tools/index.md
  - https://yandex.ru/support/tracker/ru/plugins/tools/index.md
  - href: ru/plugins/tools/index.md
    type: text/markdown
    title: Markdown version
  - href: ../../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/support/tracker/ru/llms.txt


# Инструменты разработчика

Инструментарий для разработки плагинов состоит из двух частей: SDK, который подключается в коде плагина, и CLI, который позволяет работать с жизненным циклом плагина. Весь инструментарий распространяется в виде NPM пакетов.

## SDK {#sdk}

Работа с Трекером осуществляется с помощью SDK, который подключается как библиотека. SDK предоставляет как методы взаимодействия на уровне пользовательского интерфейса, так и [методы для работы с публичным API Трекера](https://yandex.ru/support/tracker/ru/plugins/publicApi.md).

SDK поставляется в двух видах:

- `@weavix/tracker-plugin-sdk-react` — [React-like подход](https://yandex.ru/support/tracker/ru/plugins/tools/sdk/react.md). Используется в шаблонах и примерах. Рекомендуется к использованию.
- `@weavix/tracker-plugin-sdk-core` — [чистый JS](https://yandex.ru/support/tracker/ru/plugins/tools/sdk/core.md). Можно использовать с любым фреймворком.

## CLI {#cli}

[CLI](https://yandex.ru/support/tracker/ru/plugins/tools/cli.md) — это консольная утилита в виде NPM пакета, которая обеспечивает весь жизненный цикл плагина: создание, отладка, проверка и публикация.

## Библиотека компонентов {#components-library}

Для разработки интерфейса рекомендуем использовать компоненты дизайн-системы [Gravity-UI](https://gravity-ui.com). На них построен интерфейс самого Трекера, поэтому их использование позволит получить наиболее близкий UX. В будущем мы дополнительно выпустим библиотеку компонентов со специфичными компонентами Трекера.

{% note info %}

Если вы создадите плагин через CLI, в проекте уже будут подключены Gravity UI и необходимые стили. CLI также добавит файлы темы в каталог `src/themes`. Устанавливать и импортировать пакет `@yandex-data-ui/gravity-themes` не нужно.

{% endnote %}

Чтобы компоненты переключались вместе с темой Трекера, получите значение `theme` через `useTrackerPluginContext()` и передайте его в `ThemeProvider`:

```tsx
import {ThemeProvider} from '@gravity-ui/uikit';
import {useTrackerPluginContext} from '@weavix/tracker-plugin-sdk-react';

const App = () => {
    const {theme} = useTrackerPluginContext();

    return <ThemeProvider theme={theme}>Код плагина</ThemeProvider>;
};
```

