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

# Quick Start: Install Iris Code, Scan Files, and Preview Gates

> Install Iris Code, read your first score, scan the project, and see what a gate would block. Two minutes, no account.

Install Iris Code, open a file, and read the score. The first run takes about two minutes.

Everything on this page is free and works without an account.

<Steps>
  <Step title="Install it">
    <Tabs>
      <Tab title="VS Code and forks">
        Press `Ctrl+Shift+X` (or `Cmd+Shift+X`), search for **Iris Code**, and click Install. The icon appears in the Activity Bar; click it to open the sidebar.

        The same search works in **Cursor**, **Windsurf**, **VSCodium** and **Trae**, which install the identical build from [Open VSX](https://open-vsx.org/extension/davidjaja/iris-code). You can also [install the `.vsix` manually](/installation).
      </Tab>

      <Tab title="JetBrains IDEs">
        Install **LSP4IJ** first. Then **Settings → Plugins**, Marketplace tab, search **Iris Code**, Install.

        Restart the IDE properly afterwards, not just the plugin. JetBrains registers file types at startup, and skipping the restart is the single most common reason Iris Code looks broken on day one.

        Open the **Iris Code** tool window from the right sidebar. Works in IntelliJ IDEA, WebStorm, PyCharm, GoLand, PhpStorm, Rider, RubyMine, CLion and Android Studio. [More detail here](/editors/jetbrains).
      </Tab>
    </Tabs>

    <Note>
      One analysis engine sits behind every editor, so a file receives the same score and the same findings wherever you open it.
    </Note>
  </Step>

  <Step title="Open a supported file">
    Any `.js`, `.jsx`, `.ts`, `.tsx`, `.vue`, `.svelte`, `.go` or `.py` file. Iris Code scores it automatically; no command is needed.

    The **File tab** shows:

    * **A readiness summary** - score, blockers, hook posture and trend direction
    * **The health score** - 0 to 100, recalculated on every save
    * **Blockers and warnings** - each one clickable, jumping to the source line
    * **Every function** - with its length and complexity
    * **Code smells** - TODOs, magic numbers, debug prints, unused variables, long parameter lists

    Save the file and the score updates immediately.
  </Step>

  <Step title="Run your free project review">
    Command palette (`Ctrl+Shift+P` / `Cmd+Shift+P`), run **Iris Code: Analyse Workspace**.

    Iris Code walks every supported file and populates:

    * **Workspace readiness** - a single score for the project, with blocker and warning counts
    * **Hotspots** - the largest and most complex files ranked first
    * **Issues tab** - every blocker and warning in one filterable list
    * **TODOs tab** - every TODO, FIXME and HACK in the project

    Your first full project review is free, stays on your machine, and requires no account. Iris Code saves it, so the files, issues, TODOs and duplicates remain available without scanning again.

    <Note>
      The free review is a fixed snapshot. It deliberately makes no claims about unused packages, dependency risk or trends, since those require a current scan. **Refresh With Pro** re-runs it. Folder scans, hooks, builds, CI and dependency audits are also Pro.
    </Note>
  </Step>

  <Step title="Preview your enforcement posture">
    At the bottom of the **File tab**, click **Preview Gate**. Iris Code runs a background scan and shows how your project scores against all five presets:

    | Preset         | Min score | Best for                                                  |
    | -------------- | --------- | --------------------------------------------------------- |
    | **Legacy**     | 60        | Large, established codebases with accumulated debt        |
    | **Balanced**   | 70        | A typical TypeScript project, and the best starting point |
    | **TypeScript** | 76        | Raising the bar on type safety                            |
    | **Strict**     | 82        | Greenfield code, or a shared library                      |
    | **Security**   | 85        | Prioritising secrets and safety                           |

    Each card shows how many files would be blocked at that threshold. **Apply** writes `presetId` into your `.irisconfig.json` without opening the file.

    <Note>
      Preview Gate is free and read-only. No hook is installed and no file is blocked until you enable enforcement explicitly. Pro adds the list of which files fail each preset, and by how much.
    </Note>
  </Step>

  <Step title="Install the CLI (optional)">
    For scanning, gating CI, or auditing dependencies without opening an editor:

    ```bash theme={null}
    npm install -g @iris-code/cli
    iris --version
    ```

    The CLI shares the extension's thresholds, since it runs the same engine. `iris check <file>` scores a single file, and `iris gate` is the command to use in CI.
  </Step>
</Steps>

## Where to go next

<CardGroup cols={2}>
  <Card title="Block weak code" icon="shield-halved" href="/enforcement/git-hook">
    A pre-push hook stops anything below your threshold before it reaches the remote.
  </Card>

  <Card title="Share your thresholds" icon="sliders" href="/configuration/irisconfig">
    Commit one `.irisconfig.json` so the whole team analyses against the same rules.
  </Card>

  <Card title="Enforce in CI" icon="terminal" href="/cli/ci">
    Run `iris gate` in your pipeline, with inline PR annotations on GitHub.
  </Card>

  <Card title="Try Pro" icon="bolt" href="/pro">
    A 14-day trial, no card required, to evaluate whole-project scans and hooks.
  </Card>
</CardGroup>
