---
metadata:
  - name: generator
    content: Diplodoc Platform v5.54.2
  - property: og:type
    content: article
  - property: article:section
    content: Plugin platform
  - property: og:title
    content: Your first plugin in 5 minutes
  - property: article:tag
    content: Technical instructions
alternate:
  - https://yandex.ru/support/tracker/en/plugins/quickstart.md
  - https://yandex.ru/support/tracker/ru/plugins/quickstart.md
  - href: en/plugins/quickstart.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/en/llms.txt


# Your first plugin in 5 minutes

{% note alert "" %}

Before you start developing a plugin, make sure that:

- The organization administrator has allowed plugin debugging. This toggle applies to all organization users. [How an administrator can allow plugin debugging](https://yandex.ru/support/tracker/en/plugins-admin.md#block-all).
- You've enabled debugging in Tracker: ![](../_assets/svg/settings-360.svg) **Settings** → **Experiments** → **Plugin debugging**. This toggle enables debugging only for your account.

Without both settings, you won't be able to complete the development.

{% endnote %}

> **In short — what to do:**
> `npm install -g @weavix/cli ` → `weavix create` → `weavix debug` → open Tracker.

## What we'll create {#what-we-build}

In 5 minutes, you'll create a working plugin that:

- Displays in the Tracker interface
- Uses Tracker's design system components
- Is ready for customization to fit your needs

![final.gif](../\_assets/plugins/final.gif =686x){.border-yes}

## Step 1: Installation {#install}

You need to complete this step once before you start developing your first plugin.

1. Install Node.js version 22.16.0 or higher. To check the installed version, run: `node -v`.

   On macOS and Linux, we recommend installing Node.js via [nvm](https://github.com/nvm-sh/nvm): this allows global package installation without `sudo` and makes it easier to switch and update Node.js versions. On Windows, install Node.js using your preferred method or use a version manager for Windows.


1. Install the CLI. To do this, run the following command in the command line:

    ```bash
    npm install -g @weavix/cli 
    ```


## Step 2: Creating a plugin {#create}

In the command line, run:

```bash
weavix create
```

When running the command, answer a few questions:

- **Template**: choose one suitable for your [slot](https://yandex.ru/support/tracker/en/plugins/slots/index.md), such as `issue.action` for issue actions
- **Plugin ID**: specify an identifier containing only lowercase letters, numbers, and hyphens
- **Category**: choose a category for displaying the plugin in the catalog. For the full list of categories, see the [How to prepare a plugin for publishing](https://yandex.ru/support/tracker/en/plugins/publish.md#category) page
- **Permissions**: select using the arrow keys and Spacebar
- **Author/email**: provide your contact details

Then run:

```bash
cd your-plugin-id
npm install
```

## Step 3: Running and viewing {#run}

Run the command:

```bash
weavix debug
```

Open [Tracker](https://tracker.yandex.com) and in the menu select ![](../_assets/svg/settings-360.svg) **Settings** → **Experiments** → **Plugin debugging**

![debug-settings.png](../\_assets/plugins/debug-settings.png =588x){.border-yes}

{% note warning "" %}

Debugging in the Safari browser is not supported due to browser limitations. Use another browser for debugging.

If debugging doesn't work, contact your organization administrator and ask them to allow plugin debugging. [How to allow debugging](https://yandex.ru/support/tracker/en/plugins-admin.md#block-all)

{% endnote %}

When you enable debugging, the browser may request permission for the site to access the local network. Allow access: without it, debugging won't work, because the config and plugins are loaded from `localhost`.

Find your plugin in the interface, in the location that matches the selected slot. Done.

## Step 4: Publishing a plugin {#publish}

When local development is complete, publish your plugin in this order:

1. Before submitting the plugin for publication, prepare the images, description, and help.

1. Get a token by running: [`weavix login`](https://yandex.ru/support/tracker/en/plugins/tools/cli.md).

1. Run: [`weavix submit`](https://yandex.ru/support/tracker/en/plugins/tools/cli.md) — the command will automatically register the plugin if needed, upload the distribution, and submit the version for moderation.

4. After submission, track the status using `weavix list`.

For more information about publishing a plugin, see [Preparing a plugin for publishing](https://yandex.ru/support/tracker/en/plugins/publish.md).


## What's next? {#what-next}

### Editing {#editing}

Open `src/App.tsx` — changes appear immediately. No restarts needed.

### What's already set up {#whats-configured}

- React + TypeScript
- [Gravity UI](https://gravity-ui.com) — design system components
- Yandex 360 theme — your plugin will look like part of Tracker
- SDK — for working with Tracker data via [trackerApi](https://yandex.ru/support/tracker/en/plugins/publicApi.md)

### Code examples {#code-examples}

The basic plugin structure is already in the files. You can find code examples on the [Plugin platform questions](https://yandex.ru/support/tracker/en/plugins/examples.md) page.

## AI can help {#ai-help}

All APIs are typed — AI can easily understand them. Here's an example of a working prompt you can use to create a plugin:

```
Write a plugin for importing issues into Tracker from a CSV file.
For interacting with Tracker, use the @weavix/sdk-react package, which has trackerApi — a client for interacting with the host.
Need a form with:
- Search for the target queue to import into
- CSV delimiter selection
- CSV file upload
Then allow the user to map CSV fields to issue fields.
Also display import progress and results.
The plugin needs the navigation slot in the manifest, don't forget to add permissions for reading queues and fields, use the attached manifest schema.
```

{% endnote %}

## Need help? {#help}

- [Plugin examples](https://yandex.ru/support/tracker/en/plugins/examples.md) — see what you can build
- [API and SDK](https://yandex.ru/support/tracker/en/plugins/publicApi.md) — how to work with Tracker data
- [Slots and placement](https://yandex.ru/support/tracker/en/plugins/slots/index.md) — where plugins can appear
- [CLI commands](https://yandex.ru/support/tracker/en/plugins/tools/cli.md) — complete tool reference

<!-- source: en/_assets/style/image.md -->

<!-- endsource: en/_assets/style/image.md -->