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

# Install the Azul CLI daemon and Studio plugin

> Set up both parts of Azul: the azul-sync CLI daemon that runs on your machine and the companion plugin that connects from Roblox Studio.

Azul has two components that work together. The **daemon** is a CLI tool (`azul`) that runs on your machine and manages file sync. The **companion plugin** runs inside Roblox Studio and connects to the daemon over a local socket. You need both installed before you can start a sync session.

## Install the daemon

<Steps>
  <Step title="Install Node.js">
    The Azul CLI requires Node.js, which includes `npm`. Download and install it from [nodejs.org](https://nodejs.org/).

    <Tip>
      Use the LTS version for the most stable experience. If you manage multiple Node.js versions, any version 18 or later works.
    </Tip>
  </Step>

  <Step title="Install the Azul CLI globally">
    <CodeGroup>
      ```bash npm (recommended) theme={null}
      npm install -g azul-sync
      ```

      ```bash Windows (winget + manual build) theme={null}
      winget install OpenJS.NodeJS.LTS
      git clone https://github.com/Ransomwave/azul.git
      cd azul
      npm install
      npm run build
      npm install -g .
      ```

      ```bash macOS (Homebrew + manual build) theme={null}
      brew install node
      git clone https://github.com/Ransomwave/azul.git
      cd azul
      npm install
      npm run build
      npm install -g .
      ```

      ```bash Linux (apt + manual build) theme={null}
      sudo apt install nodejs npm
      git clone https://github.com/Ransomwave/azul.git
      cd azul
      npm install
      npm run build
      npm install -g .
      ```
    </CodeGroup>

    <Note>
      The manual build steps above apply if you want to install directly from the GitHub source rather than the published npm package. Most users should use `npm install -g azul-sync`.
    </Note>
  </Step>

  <Step title="Verify the installation">
    Run the following command to confirm the CLI is available on your path:

    ```bash theme={null}
    azul --version
    ```

    You should see the installed version number printed to your terminal.
  </Step>
</Steps>

## Install the Studio plugin

<Steps>
  <Step title="Open the Creator Store page">
    Visit the [Azul Companion Plugin](https://create.roblox.com/store/asset/79510309341601/Azul-Companion-Plugin) on the Roblox Creator Store.
  </Step>

  <Step title="Install to Studio">
    Click **Get Plugin** and follow the prompts. The plugin will appear in your Studio **Plugins** toolbar the next time you open Studio.
  </Step>
</Steps>

## Recommended tooling

These tools are not required to use Azul, but they significantly improve the editing experience when working with synced Luau files.

### Luau LSP (VS Code)

The [Luau Language Server extension](https://marketplace.visualstudio.com/items?itemName=JohnnyMorganz.luau-lsp) provides IntelliSense, type checking, and error highlighting for Luau files in VS Code. It reads the `sourcemap.json` that Azul generates to understand your project's DataModel structure and give accurate completions.

After installing the extension, open **User Settings (JSON)** from the command palette (`Ctrl+Shift+P` on Windows/Linux, `Cmd+Shift+P` on macOS) and add the following configuration:

```json theme={null}
{
  "luau-lsp.plugin.enabled": true,
  "luau-lsp.sourcemap.enabled": true,
  "luau-lsp.sourcemap.autogenerate": false,
  "luau-lsp.sourcemap.sourcemapFile": "sourcemap.json",
  "luau-lsp.sourcemap.includeNonScripts": true
}
```

<Note>
  Set `autogenerate` to `false` so that Luau LSP reads the sourcemap Azul writes rather than trying to generate its own. Run `azul pack` to regenerate `sourcemap.json` whenever your DataModel structure changes.
</Note>

Luau LSP is also available for [IntelliJ](https://plugins.jetbrains.com/plugin/24957-luau) and [Neovim](https://github.com/lopi-py/luau-lsp.nvim), though setup steps vary by environment.

### Verde (VS Code)

[Verde](https://marketplace.visualstudio.com/items?itemName=Dvitash.verde) is a VS Code extension that mimics the Roblox Studio Explorer and Properties panels. It pairs well with Azul to give you a Studio-like view of your project directly in your editor.

## Next steps

Once both components are installed, continue to [Project setup](/getting-started/projects) to start your first sync session.
