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

# Setup EWM Light Client Node

### Prerequisites for Running the EWM Light Client

<Steps>
  <Step title="Join the Exclusive Waitlist">
    To participate in running an EWM Light Client, you must join the exclusive waitlist. Provide your name and email by filling out this [form](https://forms.gle/sS1RDAgUwju7UQV19).
  </Step>

  <Step title="Whitelist verification ">
    <Note>Note: The EWM Light Client is open-source; however, only verified participants from the official waitlist will be eligible for testnet/mainnet access and future rewards.</Note>

    Once you receive whitelist instructions via email, you will be required to submit two addresses:

    1. **Light Client Owner Address (Mainnet Wallet Address):**
       * This address will receive rewards during the testnet phase and will be used to get whitelisted for the mainnet launch.
    2. **Burner Address:**
       * This address should **not** hold any funds. It will be used by the light client to sign the work that's been done.
         You can generate a burner address using the following resources:
         <Note>**Important:** Save both the private key and public address. **Only** share the public address with us.</Note>
       * [Visual-Key](https://visualkey.link/)
       * [Vanity-ETH](https://vanity-eth.tk/)
       * [Eth-Vanity](https://eth-vanity.io/#calc)
  </Step>
</Steps>

### Install Dependencies / Prerequisites

You can set up the EWM Light Client in four ways. Follow the appropriate dependencies based on your chosen method:

* **Run with Docker Compose**
* **Run with Installer for MacOS**
* **Run with pre-complied binaries**
* **Run from Source**

***

### Dependencies to Run with Docker Compose:

**Install Docker:**

1. Follow the [Docker installation instructions](https://docs.docker.com/engine/install/) for your specific platform and architecture.

***

### Dependencies to Run via Installer/ Pre-complied binaries/ Source:

<Steps>
  <Step title="Install Go (Version 1.22 or Later)">
    For more details on releases and installation instructions, visit the [Go Downloads page](https://go.dev/dl/).

    **MacOS:**

    ```shell theme={null}
    brew install go
    ```

    **Linux:**

    ```shell theme={null}
    wget https://go.dev/dl/go1.22.3.linux-amd64.tar.gz
    sudo tar -C /usr/local -xzf go1.22.3.linux-amd64.tar.gz

    echo "" >> ~/.bashrc
    echo 'export GOPATH=$HOME/go' >> ~/.bashrc
    echo 'export GOROOT=/usr/local/go' >> ~/.bashrc
    echo 'export GOBIN=$GOPATH/bin' >> ~/.bashrc
    echo 'export PATH=$PATH:/usr/local/go/bin:$GOBIN' >> ~/.bashrc

    source ~/.bashrc
    ```

    **Verify Go Installation:**

    ```shell theme={null}
    go version
    ```

    *Expected output: `go version go1.22.x ...`*
  </Step>

  <Step title="Install IPFS Kubo Client">
    Follow the instructions to install IPFS from the [official IPFS installation guide](https://docs.ipfs.tech/install/command-line/#system-requirements).

    **MacOS:**

    ```shell theme={null}
    brew install ipfs
    ```

    **Linux:**

    ```shell theme={null}
    wget https://dist.ipfs.tech/kubo/v0.30.0/kubo_v0.30.0_linux-amd64.tar.gz
    tar -xvzf kubo_v0.30.0_linux-amd64.tar.gz
    ```

    **Install IPFS:**

    ```shell theme={null}
    cd kubo
    sudo bash install.sh
    ```

    *This will move the `ipfs` binary to `/usr/local/bin`.*

    **Verify IPFS Installation:**

    ```shell theme={null}
    ipfs --version
    ```

    *Expected output: `ipfs version 0.30.0`*
  </Step>
</Steps>
