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

# Running the Parallax client

> Step-by-step guide for installing and running the Parallax client on your machine.

Running your own **Parallax node** is the best way to fully participate in the network—whether you're a miner, or just a curious user who wants to verify everything independently.\
This guide walks you through downloading, installing, and running the Parallax client with the simplest possible steps.

For more technical details about the Parallax client, please read the [Parallax client technical documentation](../../parallax-client/getting-started/introduction).

***

## Prerequisites

Before you begin, make sure you have:

* A computer running **Windows, macOS, or Linux**
* At least **2 GB of RAM** (4 GB recommended for mining)
* At least 50 GB of space (SSD recommended, 100 GB for mining with DAG storage)
* A stable internet connection
* Port `32110` TCP & UDP allowed through your firewall (recommended — see [Accepting incoming connections](#accepting-incoming-connections))

***

## Step-by-step Guide

<Steps>
  <Step title="Download the Parallax client">
    Go to our [GitHub Releases page](https://github.com/ParallaxProtocol/parallax/releases/latest) and download the correct file for your operating system:

    * **Windows 64-bit**: `parallax-windows-amd64.zip`
    * **Windows 32-bit**: `parallax-windows-386.zip`
    * **macOS (Intel)**: `parallax-darwin-amd64.tar.gz`
    * **macOS (Apple Silicon)**: `parallax-darwin-arm64.tar.gz`
    * **Linux (x86)**: `parallax-linux-amd64.tar.gz`
    * **Linux (ARM)**: `parallax-linux-arm64.tar.gz`
    * **Linux (ARMv7)**: `parallax-linux-armv7.tar.gz`
  </Step>

  <Step title="Unzip the package">
    Extract the downloaded file to a folder of your choice.

    Inside, you’ll see these programs:

    * **parallaxd** → the Parallax full-node daemon (this is the one you’ll run)
    * **parallax-cli** → JSON-RPC client for talking to a running node
    * **parallax-wallet** → offline wallet management tool (create/list/import accounts, sign messages and transactions)
    * **parallax** → a thin multi-call wrapper (`parallax node ...` → `parallaxd`, `parallax rpc ...` → `parallax-cli`, `parallax wallet ...` → `parallax-wallet`)
    * **clef** → long-running external signer daemon with a rule engine (advanced users only)
  </Step>

  <Step title="Start the client">
    * **Windows / macOS**: Simply double-click `parallaxd` to start your Parallax node.
    * **Linux**: You may need to right-click → “Allow executing file as program” before double-clicking.

    A window or terminal will open showing logs as the node connects to the network.\
    That’s it — you’re running a Parallax node!

    <Note>
      By default, the Parallax client will store the block chain data in this folder depending on your Operating System:

      * Windows: `%APPDATA%\Parallax` or `%LOCALAPPDATA%\Parallax`
      * macOS: `~/Library/Parallax`
      * Linux: `~/.parallax`
    </Note>
  </Step>
</Steps>

✨ You’re now connected to the Parallax network!

***

## Accepting incoming connections

Your node works without this, but it can only connect *out* to other nodes. Letting other nodes connect *in* gives you more peers and helps strengthen the network.

Two things have to let the connection through: your **router** and your computer's **firewall**.

### Router

Most home routers need no setup. The client asks the router to forward port `32110` automatically (UPnP or NAT-PMP), and keeps the mapping alive while it runs. If that fails, the node log shows `Couldn't add port mapping`; in that case, enable UPnP in your router's settings, or forward `32110` TCP & UDP to your computer by hand.

<Note>
  Some internet providers share one public address between many customers (carrier-grade NAT). Incoming connections can't reach you then, whatever you configure. To check, compare the WAN address shown in your router with the address [ifconfig.me](https://ifconfig.me) shows — if they differ, you're behind carrier-grade NAT.
</Note>

### Firewall

The router forwarding the port is not enough: your computer's own firewall must allow it too.

* **Windows**: the first time `parallaxd` runs, Windows asks whether to allow it on the network. Tick **both** "Private networks" **and** "Public networks", then click **Allow access**. Windows treats most networks as *Public* by default, so allowing Private alone usually still blocks incoming connections.

  If you already answered the prompt, open **Windows Security → Firewall & network protection → Allow an app through firewall**, click **Change settings**, and tick both columns for `parallaxd`. Or run this in a terminal opened as administrator:

  ```powershell theme={null}
  netsh advfirewall firewall add rule name="Parallax P2P TCP" dir=in action=allow protocol=TCP localport=32110
  netsh advfirewall firewall add rule name="Parallax P2P UDP" dir=in action=allow protocol=UDP localport=32110
  ```

  If you clicked **Cancel** on the prompt, Windows created a rule that *blocks* `parallaxd`, and block rules win over allow rules. Remove it in the "Allow an app through firewall" list, or under **Advanced settings → Inbound Rules**, before adding the rules above.

* **macOS**: if the firewall is on, allow `parallaxd` when macOS asks whether it may accept incoming connections. To change it later: **System Settings → Network → Firewall → Options**.

* **Linux**: most desktop distributions ship with the firewall off. If you use `ufw` or `firewalld`:

  ```bash theme={null}
  sudo ufw allow 32110
  # or
  sudo firewall-cmd --permanent --add-port=32110/tcp --add-port=32110/udp && sudo firewall-cmd --reload
  ```

<Tip>
  To confirm it works, check port `32110` with an online open-port checker while the node runs, or run `admin.peers` in the console: peers with `"inbound": true` connected to you.
</Tip>

***

## For Advanced Users

If you’re comfortable with the terminal, here are a few helpful commands:

* **Check version**:

  ```bash theme={null}
  ./parallaxd version
  ```

* **Change data directory**:

  ```bash theme={null}
  ./parallaxd --datadir /custom/path
  ```

* **Enable API**:

  ```bash theme={null}
  ./parallaxd --http --http.api "eth,net,web3"
  ```

* **Increase log detail**:

  ```bash theme={null}
  ./parallaxd --verbosity 4
  ```

* **Show your node on [status.parallaxprotocol.org](https://status.parallaxprotocol.org)**:

  ```bash theme={null}
  ./parallaxd --prlstats
  ```

  Your node reports under a random name, generated once and kept in the data directory, and is shown under a pseudonym. To report to another stats service, give its address: `--prlstats name@stats.example.org`. Only mainnet nodes can report to status.parallaxprotocol.org.

* **Sync from Parallax testnet**:

  ```bash theme={null}
  ./parallaxd --testnet
  ```

***

## Security Notice

⚠️ **Never expose RPC or WebSocket ports `8545`/`8546` directly to the internet** without proper protection. This can put your node and assets at risk.

For most users, simply double-clicking the client and letting it run is the safest approach.


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