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

# Your monorepo. Explicit commands.

> Isox is a lightweight monorepo command runner with explicit project configuration and no background daemon.

Define commands in each project's `project.json`, then run them from anywhere
inside your workspace. Keep your package manager and the tools you already use.

Install [`@isox-sh/cli`](https://isox.sh/docs/getting-started) to use the `isox` command:

```sh theme={null}
npx isox build web
npx isox affected --target=test --base=origin/main
```

> [card] [Run your first command](https://isox.sh/docs/getting-started.md)
>
> Install Isox, define a project, and run a command in a few steps.

> [card] [Understand the workspace](https://isox.sh/docs/concepts.md)
>
> Learn how projects, executors, configurations, and dependencies fit together.

## A small configuration surface

An `isox.json` file marks the workspace root. Each `project.json` describes the
commands available for that project. A command can wrap an existing script or use
an executor that integrates directly with a tool.

```json apps/web/project.json theme={null}
{
  "name": "web",
  "targets": {
    "build": {
      "executor": "core:run-command",
      "options": {
        "command": "npm run build",
        "cwd": "apps/web"
      }
    }
  }
}
```

The example runs the existing `build` script in `apps/web`. Use
[named configurations](https://isox.sh/docs/cli.md#named-configurations) for different environments.

## From local development to CI

Isox discovers project dependencies from source imports, TypeScript aliases,
local package references, and explicit declarations. Use that graph to select
changed projects and their dependents, then distribute work across weighted
GitHub Actions jobs.

Project definitions are cached separately from dependency-analysis results.
Affected selection, cacheable targets, and executors that need dependencies
validate the analysis cache. Native targets can also reuse successful task results
with [opt-in local caching](https://isox.sh/docs/task-caching.md).

> [card] [Configure your workspace](https://isox.sh/docs/configuration.md)
>
> Define projects, metadata, dependencies, and CI weights.

> [card] [Run affected projects](https://isox.sh/docs/affected-and-ci.md)
>
> Select changes with Git and build exact, weighted CI matrices.

> [card] [Build with TypeScript](https://isox.sh/docs/typescript.md)
>
> Scaffold projects, compile packages, copy assets, and watch for changes.

> [card] [Migrate from Nx](https://isox.sh/docs/nx-migration.md)
>
> Move commands to Isox with temporary adapter support for Nx 23.

> [!NOTE]
>
> Isox orders selected projects by dependency when a multi-project stage includes
> cached outputs. Declare [`dependsOn`](https://isox.sh/docs/task-prerequisites#task-prerequisites)
> to add required tasks, including tasks outside the selected project list.
> Separate CI jobs expand their own prerequisites; see
> [execution ordering](https://isox.sh/docs/github-actions.md#execution-ordering).
> [Local task caching](https://isox.sh/docs/task-caching.md) is available; remote caching remains
> on the [roadmap](https://github.com/isox-sh/isox/blob/main/ROADMAP.md).

## Build your own plugin

> [card] [Create your first plugin](https://isox.sh/docs/plugin-quickstart.md)
>
> Write an executor, install it locally, and run it. Open the Plugins tab for
> generators, migrations, packaging, and testing.

## Extend your tooling

Use the built-in [shell executor](https://isox.sh/docs/shell-commands.md), or install native executors
for [TypeScript](https://isox.sh/docs/typescript.md), [ESLint](https://isox.sh/docs/eslint.md), and [Vitest](https://isox.sh/docs/vitest.md).
Use the [release plugin](https://isox.sh/docs/semver.md) for versioning, changelogs, and publishing hooks.
Write [custom plugins](https://isox.sh/docs/custom-plugins.md) when your workflow
needs its own integration, and verify them with the
[plugin testing helper](https://isox.sh/docs/plugin-testing.md).


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