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

# Quickstart

> Get started with toju in 5 minutes

## Using the Web App

The fastest way to use toju is through the web interface.

### Pay with SOL

<Steps>
  <Step title="Connect Wallet">
    Visit [toju.network](https://toju.network) and connect your Solana wallet (Phantom, Solflare, etc.)
  </Step>

  <Step title="Get Testnet SOL">
    If using testnet, get free SOL from the [Solana Faucet](https://faucet.solana.com/)
  </Step>

  <Step title="Upload Files">
    * Select files to upload (single or multiple)
    * Choose storage duration (7, 30, 90, or custom days)
    * Optionally add your email for expiration reminders
  </Step>

  <Step title="Pay & Confirm">
    Review the cost estimate and sign the transaction with your wallet
  </Step>
</Steps>

### Pay with USDFC (Filecoin)

<Steps>
  <Step title="Connect Wallet">
    Visit [toju.network](https://toju.network) and switch to the **FIL** tab, then connect your MetaMask wallet
  </Step>

  <Step title="Get USDFC">
    You need USDFC tokens on Filecoin. For testnet, mint test USDFC at [stg.usdfc.net](https://stg.usdfc.net) using tFIL from the [Calibration Faucet](https://faucet.calibnet.chainsafe-fil.io/funds.html).
  </Step>

  <Step title="Upload Files">
    * Select files to upload (single or multiple)
    * Choose storage duration
    * Optionally add your email for expiration reminders
  </Step>

  <Step title="Pay & Confirm">
    Review the cost in USDFC and approve the token transfer in your wallet
  </Step>
</Steps>

<Info>
  USDFC is a stablecoin pegged 1:1 to USD on Filecoin. You'll also need a small amount of FIL for gas fees.
</Info>

<Check>
  Your files are now stored on decentralized storage! You can view them in the Upload History page.
</Check>

## Using the SDK

Install the SDK in your React app:

```bash theme={null}
pnpm add @toju.network/sol
```

<Info>
  **Using in production?** For better reliability and performance, use your own RPC provider ([Helius](https://helius.dev), [QuickNode](https://quicknode.com)) instead of public Solana endpoints. See the [SDK Overview](/sdk/overview#custom-rpc-url-optional) for configuration details.
</Info>

Basic usage example:

```tsx theme={null}
import { useUpload, Environment } from '@toju.network/sol';
import { useWallet } from '@solana/wallet-adapter-react';

function UploadComponent() {
  const client = useUpload(Environment.testnet);
  const { publicKey, signTransaction } = useWallet();
  
  const handleUpload = async (file, duration) => {
    const result = await client.createDeposit({
      file,
      durationDays: duration,
      payer: publicKey,
      signTransaction: async (tx) => {
        return await signTransaction(tx);
      },
    });
    
    if (result.success) {
      console.log('Upload successful!', result.cid);
    }
  };
  
  return (
    // Your upload UI
  );
}
```

<Card title="SDK Documentation" icon="book" href="/sdk/overview">
  Learn more about SDK features and API reference
</Card>

## Contributing

Want to contribute to toju? Check out the [Local Development Guide](/local-development) to set up the project on your machine.
