> ## Documentation Index
> Fetch the complete documentation index at: https://isox.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Build Isox plugins

> Start with a working executor, then add generators, migrations, and tests.

A plugin is an npm package that adds executors, generators, or migrations to
Isox. Include only the capabilities you need.

> [card] [Create your first plugin](https://isox.sh/docs/plugin-quickstart.md)
>
> Build a working executor, install it locally, and run it from an Isox target.

## Choose a capability

| I want to… | Build | Example |
| - | - | - |
| Run a tool from a project target | [An executor](https://isox.sh/docs/custom-executors.md) | Build, lint, or deploy |
| Create a project or configure an existing one | [A generator](https://isox.sh/docs/plugin-generators.md) | Scaffold a library or add a test target |
| Update configuration when a plugin is upgraded | [A migration](https://isox.sh/docs/plugin-migrations.md) | Rename an option in existing projects |

## Build, test, and share

1. **Get a working example:** follow [your first plugin](https://isox.sh/docs/plugin-quickstart.md).
2. **Organize the package:** declare registries and ship compiled files with [layout and packaging](https://isox.sh/docs/plugin-packaging.md).
3. **Test what users install:** run the built package through the CLI with [plugin testing](https://isox.sh/docs/plugin-testing.md).

Use [plugin helpers](https://isox.sh/docs/plugin-helpers.md) for logging and configuration edits,
and the [Core API](https://isox.sh/docs/core-api.md) for workspace discovery and execution.

Looking to use an existing plugin? The **Guides** tab covers
[TypeScript](https://isox.sh/docs/typescript.md), [ESLint](https://isox.sh/docs/eslint.md), [Vitest](https://isox.sh/docs/vitest.md), and
[releases](https://isox.sh/docs/semver.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.