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

# Install the node

> Download, check and open the node on Windows, macOS, Linux or Docker.

Every release is on [github.com/PanoFlow/panofx-node/releases](https://github.com/PanoFlow/panofx-node/releases),
with a `SHA256SUMS` file listing the checksum of each command-line binary. The current version is **0.10.1**.

<Tabs>
  <Tab title="Windows">
    The Windows download, `panofx-node-0.10.1-windows-amd64.exe`, is the whole node: there is no installer.
    Opened with a double-click, it runs the Panofx Node app and shows it in your browser.

    <Steps>
      <Step title="Download">
        Get `panofx-node-0.10.1-windows-amd64.exe` and `SHA256SUMS` from the release. Make a folder for them,
        such as `C:\Panofx`, move both files there, and rename the `.exe` to `panofx-node.exe`.
      </Step>

      <Step title="Check the download (recommended)">
        Open PowerShell in that folder. In File Explorer, right-click an empty part of the folder and choose
        **Open in Terminal**; on Windows 10, **File → Open Windows PowerShell**. Run these two lines. The two
        hashes must be the same; PowerShell prints its hash in capitals, which is fine.

        ```powershell theme={null}
        Get-FileHash .\panofx-node.exe -Algorithm SHA256
        Select-String windows-amd64 .\SHA256SUMS
        ```
      </Step>

      <Step title="Open it with a double-click">
        Windows says **Windows protected your PC**, because the file is not signed with a code-signing
        certificate yet. Click **More info**, then **Run anyway**. If there is no **Run anyway**, right-click
        the file, choose **Properties**, tick **Unblock**, click **OK**, and open it again.

        A black window opens, and your browser opens the app at [http://127.0.0.1:47800](http://127.0.0.1:47800). If the browser does
        not open, copy the link from the window.

        <Warning>**Leave the black window open.** It is your node: closing it stops quoting.</Warning>

        If your antivirus removes the file, restore it from the antivirus history and allow it.
      </Step>

      <Step title="Set up your node">
        Follow [Set up your node in the app](/resolvers/app-setup).
      </Step>

      <Step title="Keep it running">
        * Stop the PC sleeping: in **Settings → System → Power** (on Windows 11, **Power & battery**), set sleep when plugged in to **Never**.
        * Start the node when you sign in: press **Win+R**, type `shell:startup` and press Enter. Put a shortcut to `panofx-node.exe` in the folder that opens (right-click the file and choose **Create shortcut**; on Windows 11 it is under **Show more options**).
      </Step>

      <Step title="Know where your data is">
        Settings, the wallet and history are in `%AppData%\Panofx`, with the wallet passphrase in `secrets.json`
        there. The recovery phrase the app shows you is what restores the wallet: keep it on paper.
      </Step>
    </Steps>

    **To update,** close the black window, replace `panofx-node.exe` with the new version under the same name,
    and open it again. For the command line on Windows, run every command in PowerShell as `.\panofx-node.exe <command>`.
  </Tab>

  <Tab title="macOS">
    Use the **Panofx Node app**: it lives in the menu bar, keeps your Mac awake while your node is live, and
    keeps the wallet passphrase in the macOS keychain.

    <Steps>
      <Step title="Download and install">
        Get `PanofxNode-0.10.1.dmg` from the release, open it, and drag **Panofx Node** onto the Applications
        folder beside it. Eject the disk image.
      </Step>

      <Step title="Open it from Applications">
        Releases are not yet signed with our Developer ID, so macOS says it could not verify **Panofx Node**.
        Click **Done**, open **System Settings → Privacy & Security**, scroll to **Security**, click
        **Open Anyway** beside "Panofx Node was blocked", confirm with Touch ID or your password, and open the
        app again. You do this once for each new version.

        A signed release asks instead, once, whether to open an app downloaded from the internet: choose **Open**.
      </Step>

      <Step title="Set up your node">
        Follow [Set up your node in the app](/resolvers/app-setup).
      </Step>

      <Step title="Leave it running">
        Its menu-bar icon shows whether your node is live, paused or needs attention, and the menu has
        **Pause quoting**, **Keep this Mac awake** and **Open at login**. Closing a laptop lid still sleeps the
        Mac: leave the lid open, or use a desktop Mac or a server.
      </Step>

      <Step title="Know where your data is">
        `~/Library/Application Support/Panofx`, with the wallet passphrase in your login keychain. Logs are in
        `~/Library/Logs/Panofx/node.log`.
      </Step>
    </Steps>

    **To update,** quit the app from its menu, drag the new version into Applications and choose **Replace**, then open it.

    **For the command line on a Mac,** download `panofx-node-0.10.1-darwin-arm64` (Apple silicon) or
    `panofx-node-0.10.1-darwin-amd64` (Intel) with `SHA256SUMS`, then in Terminal (Intel: replace `arm64` with `amd64`):

    ```bash theme={null}
    cd ~/Downloads
    shasum -a 256 panofx-node-0.10.1-darwin-arm64; grep darwin-arm64 SHA256SUMS   # the two hashes must match
    chmod +x panofx-node-0.10.1-darwin-arm64
    xattr -d com.apple.quarantine panofx-node-0.10.1-darwin-arm64   # "No such xattr" is fine
    sudo mkdir -p /usr/local/bin && sudo mv panofx-node-0.10.1-darwin-arm64 /usr/local/bin/panofx-node
    panofx-node version
    ```

    `panofx-node app` then opens the same interface in your browser, without the menu bar or the keychain.
  </Tab>

  <Tab title="Linux">
    Download the binary for your machine (`linux-amd64`, or `linux-arm64` for ARM such as a Raspberry Pi or
    AWS Graviton), check it, and put it on your path:

    ```bash theme={null}
    V=0.10.1
    curl -LO https://github.com/PanoFlow/panofx-node/releases/download/node-v$V/panofx-node-$V-linux-amd64
    curl -LO https://github.com/PanoFlow/panofx-node/releases/download/node-v$V/SHA256SUMS
    sha256sum --ignore-missing -c SHA256SUMS
    chmod +x panofx-node-$V-linux-amd64 && sudo mv panofx-node-$V-linux-amd64 /usr/local/bin/panofx-node
    panofx-node version
    ```

    **On a desktop,** run `panofx-node app`. It opens the interface in your browser at [http://127.0.0.1:47800](http://127.0.0.1:47800)
    and keeps its data in `~/.config/panofx`. Leave the terminal open while your node runs.

    **On a server,** run the app as a service and set it up from a [paired browser](/resolvers/headless):

    ```bash theme={null}
    sudo useradd --system --create-home --home-dir /var/lib/panofx panofx
    sudo tee /etc/systemd/system/panofx-node.service >/dev/null <<'UNIT'
    [Unit]
    Description=Panofx node
    Wants=network-online.target
    After=network-online.target

    [Service]
    User=panofx
    ExecStart=/usr/local/bin/panofx-node app --open=false --remote on --data-dir /var/lib/panofx
    Restart=always
    RestartSec=5

    [Install]
    WantedBy=multi-user.target
    UNIT
    sudo systemctl enable --now panofx-node
    journalctl -u panofx-node -f
    ```

    The pairing link appears in that log. **To update,** replace `/usr/local/bin/panofx-node` and run
    `sudo systemctl restart panofx-node`.
  </Tab>

  <Tab title="Docker">
    The image is `ghcr.io/panoflow/panofx-node:0.10.1`, for linux/amd64 and linux/arm64; `latest` follows the
    newest release. While the image is private, log in first with a GitHub token that has `read:packages`:

    ```bash theme={null}
    echo "$GITHUB_TOKEN" | docker login ghcr.io -u <your GitHub username> --password-stdin
    ```

    To run the app and set it up from a paired browser, give it a volume and read the pairing link from its
    log. The container runs as user 10001, which must own the volume:

    ```bash theme={null}
    docker volume create panofx-data
    docker run --rm -v panofx-data:/data alpine chown 10001:10001 /data
    docker run -d --name panofx-node --restart unless-stopped \
      -e PANOFX_MODE=app -v panofx-data:/data \
      ghcr.io/panoflow/panofx-node:0.10.1
    docker logs -f panofx-node
    ```

    Then continue with [pairing a browser](/resolvers/headless#open-the-pairing-link). **To update,** run
    `docker rm -f panofx-node` and the same `docker run` with the new tag: the volume keeps the wallet, the
    settings and the paired browsers.

    To run from a policy file instead of the app, see [Containers](/resolvers/runbook/containers).
  </Tab>
</Tabs>

<Check>
  Whichever path you took, `panofx-node version` (or the black window on Windows) prints `0.10.1`. Older
  versions decline every request: see [Release notes](/reference/release-notes) for what each version needs.
</Check>
