# Raspberry Pi

Turn your Raspberry Pi into a powerful contributor to the decentralized web with Webhash. This lightweight setup enables censorship-resistant website hosting — right from your desk.

***

#### ✅ Prerequisites

Ensure you have:

* **Raspberry Pi 4 or 5** with at least **4GB RAM**
* An **external SSD** (recommended)
* **Raspberry Pi OS** (64-bit recommended)
* Static public IP or NAT forwarding configured
* A **new wallet** funded with **Sepolia ETH on Base**

***

#### 🪙 Step 1: Create a New Wallet & Fund It

1. Create a new wallet using MetaMask or any EVM-compatible wallet
2. Export the private key (⚠️ Do NOT use your main wallet)\
   📺 [Watch: How to Export Private Key from MetaMask](https://www.youtube.com/watch?v=ke9j2wuYhPE\&t=96s)
3. Fund the wallet with Sepolia ETH on Base using:\
   👉 [Base Sepolia Faucet – Alchemy](https://www.alchemy.com/faucets/base-sepolia)

***

#### 💻 Step 2: Flash Raspberry Pi OS & Update

1. Use **Raspberry Pi Imager** to flash **Raspberry Pi OS (64-bit)**
2. Boot the Pi, open terminal, and run:

```bash
sudo apt update && sudo apt upgrade -y
```

***

#### ⚙️ Step 3: Run the Webhash Node Setup Script

Run this command:

```bash
curl -fsSL https://raw.githubusercontent.com/WebHash-eth/hash-node-setup/refs/heads/main/scripts/setup.sh > setup.sh && chmod +x setup.sh && ./setup.sh
```

***

#### 🛠 During Setup – You Will Be Prompted For:

1️⃣  WebSocket url for **Base Sepolia**\
2️⃣  WebSocket url for **Ethereum Mainnet**&#x20;

***

**🔹 Option A: Using Alchemy (Recommended)**

You only need **one app** to get **both URLs**:

1. Go to the Alchemy Dashboard and log in
2. Click **"Create App"**
   * **Name**: Webhash Node
   * **Chain**: Base
   * **Network**: Base Sepolia
3. After the app is created, click **"Configure"** (top right)
4. Under **"Add Chains"**, enable **Ethereum → Mainnet**
5. Now go back to the app dashboard:
   * Click the **"Network"** tab
   * Copy the WebSocket URL for **Base Sepolia**
   * Then switch to **Ethereum Mainnet** and copy its WebSocket URL

✅ Examples:

* **Base Sepolia**: `wss://base-sepolia.g.alchemy.com/v2/your-api-key`
* **Ethereum Mainnet**: `wss://eth-mainnet.g.alchemy.com/v2/your-api-key`

📌 *Ensure both URLs start with `wss://`. HTTP URLs are not supported.*

***

**🔹 Option B: Using QuickNode**

1. Go to [QuickNode](https://www.quicknode.com)
2. Create **two endpoints**:
   * One for **Base Sepolia**
   * One for **Ethereum Mainnet**
3. Go to each endpoint’s dashboard
4. Copy the **WebSocket URL** from the **WebSockets tab**

✅ Examples:

* **Base Sepolia**: `wss://your-node.base-sepolia.quiknode.pro/your-key/`
* **Ethereum Mainnet**: `wss://your-node.ethereum.quiknode.pro/your-key/`

📌 *Again, make sure to copy the `wss://` URLs only. HTTP endpoints won't work.*

***

#### **3️⃣** Enter Your Email for Updates

After entering your Base Sepolia WebSocket URL & Ethereum Mainnet WebSocket URL, you’ll be prompted to enter your email:\
**Please enter your email address:**\
This helps us send you important updates, community news, and reward announcements related to your node activity.\
📌 *Your email is stored securely and never shared.*

***

**4️⃣ Storage Directory Selection**

You'll see this prompt:

```
Do you want to use a separate disk for storage? (y/n)
```

* Type `y` if you want to use a custome path:
  * Enter the mounted path, e.g., `/mnt/webhash`
* Type `n` to use the **default path**:\
  `/root/.webhash-node-data`

📌 Ensure the SSD is mounted before choosing `y`

***

#### 🌐 Step 4: Configure NAT & Static IP

Access your router settings and do the following:

* **Forward TCP/UDP port 4001** to your Pi’s local IP
* Assign a **static IP** to your Raspberry Pi in the router settings\
  (or configure static IP on the Pi directly)

***

#### ✅ Step 5: Confirm Node Registration Output

Once the setup is complete, your terminal should show:

```
✔ Container node       Healthy
✔ Container pinner     Started
Waiting for node container to be ready...
Configuring node...
Node started with peer ID: 12D3KooW...
Registering node with peer ID: 12D3KooW...
Node registered successfully with peer ID: 12D3KooW...
```

📌 If you see **“Node registered successfully,”** your Raspberry Pi node is officially live and contributing to Webhash!

***

#### 📢 Final Step – Join the Webhash Community

Once your node is successfully registered, you’ll see a message prompting you to join our official Discord and Telegram channels.\
👉 **Join our**[ Discord](https://discord.gg/zUpBGJ4uh5) **to claim your exclusive “🥷Node Ninja” role** and connect with other node operators!

Stay connected, get support, and earn early contributor perks by being part of the Webhash community.

***

**⚠️ Troubleshooting & Support**

If you run into any issues while setting up your **Webhash Node**, we’re here to help!

📌 Join our Discord and create a support ticket – Our team will assist you instantly.

🔗 [Join Webhash Discord](https://discord.gg/zUpBGJ4uh5)&#x20;
