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

# Installation & Setup

> Complete guide to installing and configuring the IOTA Repstation SDK

## Prerequisites

Before installing IOTA Repstation, ensure you have:

<AccordionGroup>
  <Accordion icon="nodejs" title="Node.js Environment">
    * Node.js version 16 or higher
    * npm, yarn, or pnpm package manager
    * TypeScript support (recommended)
  </Accordion>

  <Accordion icon="wallet" title="IOTA Wallet Setup">
    * An IOTA wallet for testnet/mainnet transactions
    * Basic understanding of IOTA addresses and transactions
    * Access to IOTA RPC endpoints
  </Accordion>

  <Accordion icon="code" title="Development Environment">
    * Code editor with TypeScript support
    * Basic familiarity with async/await patterns
    * Understanding of blockchain concepts
  </Accordion>
</AccordionGroup>

## Installation

<Steps>
  <Step title="Install the Package">
    Install IOTA Repstation using your preferred package manager:

    <CodeGroup>
      ```bash npm theme={null}
      npm install @repstation/sdk
      ```

      ```bash yarn theme={null}
      yarn add @repstation/sdk
      ```

      ```bash pnpm theme={null}
      pnpm add @repstation/sdk
      ```
    </CodeGroup>
  </Step>

  <Step title="Install IOTA SDK (Optional)">
    For real blockchain interactions, install the official IOTA SDK:

    ```bash theme={null}
    npm install @iota/sdk
    ```

    <Note>
      The IOTA SDK is optional. IOTA Repstation includes mock clients for development and testing.
    </Note>
  </Step>

  <Step title="TypeScript Configuration">
    If using TypeScript, ensure your `tsconfig.json` supports modern ES features:

    ```json tsconfig.json theme={null}
    {
      "compilerOptions": {
        "target": "ES2022",
        "module": "ESNext",
        "moduleResolution": "bundler",
        "strict": true,
        "esModuleInterop": true,
        "skipLibCheck": true
      }
    }
    ```
  </Step>
</Steps>

### Network Configurations

IOTA Repstation supports multiple networks:

<Tabs>
  <Tab title="Testnet">
    ```javascript theme={null}
    const config = {
      network: 'testnet',
      rpcUrl: 'https://api.testnet.iota.cafe'
    };
    ```

    **Best for:** Development, testing, and integration
  </Tab>

  <Tab title="Mainnet">
    ```javascript theme={null}
    const config = {
      network: 'mainnet',
      rpcUrl: 'https://api.mainnet.iota.cafe'
    };
    ```

    **Best for:** Production applications
  </Tab>

  <Tab title="Custom">
    ```javascript theme={null}
    const config = {
      network: 'custom',
      rpcUrl: 'https://your-custom-node.com'
    };
    ```

    **Best for:** Private networks or custom deployments
  </Tab>
</Tabs>

## Client Configuration

### Browser/Frontend Setup

For frontend applications:

```javascript theme={null}
import { RepstationClient } from '@repstation/sdk';

const client = new RepstationClient({
    network: 'testnet', // or 'mainnet'
    rpcUrl: 'https://api.testnet.iota.cafe',
    client: iotaClient // Optional
});
```

## Verification

Test your installation with a simple reputation query:

```javascript theme={null}
async function testInstallation() {
  try {
    const result = await client.getReputationProfile({
      walletAddress: '0x86d455032e8c6af6885ff07cbf4eb1f76c532e4de1f7c6358d2ed06dc51d7554'
    });
    
    if (result.success) {
      console.log('✅ Installation successful!');
      console.log('Profile:', result.profile);
    } else {
      console.log('❌ Installation issue:', result.error);
    }
  } catch (error) {
    console.error('❌ Installation failed:', error);
  }
}

testInstallation();
```

## Next Steps

<CardGroup cols={2}>
  <Card title="Quickstart Guide" icon="rocket" href="/quickstart">
    Build your first integration in minutes.
  </Card>

  <Card title="Core Concepts" icon="book" href="/concepts/overview">
    Understand how deals and reputation work.
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/introduction">
    Explore the complete SDK documentation.
  </Card>

  <Card title="Integration Examples" icon="puzzle-piece" href="/integration/marketplace-example">
    See real-world integration patterns.
  </Card>
</CardGroup>

<Note>
  The IOTA Repstation SDK is designed to work out of the box with sensible defaults. Most applications only need to provide a network and package ID to get started.
</Note>
