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

# Fun Launch

> Build a Launchpad platform for launching tokens with Meteora's Dynamic Bonding Curve Program in just a few steps

In this guide, Metsumi will walk you through the steps to create a launchpad platform for launching tokens with Meteora's Dynamic Bonding Curve Program.

<Frame>
  <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/metsumi/metsumi-8.webp?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=08f6e4735398e6ffc8d7a87402999b52" width="1920" height="1077" data-path="images/metsumi/metsumi-8.webp" />
</Frame>

# Features

<CardGroup cols={1}>
  <Card title="Integrated with Meteora DBC" icon="money-bill-trend-up" iconType="solid">
    Built-in integration for Meteora's DBC program to create token pools with your DBC config key. You can configure your DBC config key on [launch.meteora.ag](https://launch.meteora.ag) and get started within minutes.
  </Card>
</CardGroup>

<CardGroup cols={2}>
  <Card title="Advanced Token Analytics" icon="rocket" iconType="solid">
    Productin-grade search functionalities and real-time data from websocket APIs. Provide up-to-date information including token price, volume and holder count on your launchpad platform without worrying about the nitty-gritty details of indexing data.
  </Card>

  <Card title="Built-in Trading Interface" icon="chart-line" iconType="solid">
    Ready-to-use trading interface with all the features you need for users to trade your tokens without leaving the platform. Comprises of with Trading View's charts and open source Jupiter APIs that includes volume analysis and trading marks.
  </Card>
</CardGroup>

# Tech Stack

* Next.js
* TypeScript
* Tailwind CSS
* Solana Web3.js
* Dynamic Bonding Curve SDK
* Cloudflare R2 for storage

# Prerequisites

* Node.js >= 18.0.0
* pnpm >= 10.0.0

## Setup

<Steps>
  <Step title="Clone and Setup Meteora Invent">
    Meteora Invent is a toolkit consisting of everything you need to invent innovative token launches on Meteora. Run the following command in your terminal to get started.

    ```bash Terminal theme={"system"}
    git clone https://github.com/MeteoraAg/meteora-invent.git
    ```

    Once you've cloned the repository, you'll have a new project directory with a meteora-invent folder. Run the following to install pnpm and the project dependencies.

    ```bash Terminal theme={"system"}
    cd meteora-invent
    pnpm install
    ```

    <Frame>
      <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/developer-guide/pnpm-install.webp?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=4bf82920c004b98b1a409a40cd955760" width="997" height="339" data-path="images/developer-guide/pnpm-install.webp" />
    </Frame>
  </Step>

  <Step title="Setup Environment Variables">
    Copy the `.env.example` file to `.env` and configure the environment variables.

    ```bash theme={"system"}
    cp scaffolds/fun-launch/.env.example scaffolds/fun-launch/.env
    ```

    ```env theme={"system"}
    # Cloudflare R2 Storage
    R2_ACCESS_KEY_ID=your_r2_access_key_id
    R2_SECRET_ACCESS_KEY=your_r2_secret_access_key
    R2_ACCOUNT_ID=your_r2_account_id
    R2_BUCKET=your_r2_bucket_name

    # Solana RPC URL
    RPC_URL=your_rpc_url

    # Pool Configuration
    POOL_CONFIG_KEY=your_pool_config_key
    ```

    <Tip>
      **Getting R2 Credentials**

      1. Go to [Cloudflare Dashboard](https://dash.cloudflare.com)
      2. Navigate to R2
      3. Create a new bucket or select an existing one
      4. Go to "Manage R2 API Tokens"
      5. Create a new API token with the following permissions:
         * Account R2 Storage: Edit
         * Bucket: Your bucket name
      6. Copy the Access Key ID and Secret Access Key
      7. Your Account ID can be found in the Cloudflare dashboard URL or in the Account Home page
    </Tip>

    <Tip>
      **Getting RPC URL**
      You can get your RPC URL from any 3rd party provider like [Triton](https://triton.one/) or [Helius](https://www.helius.dev).
    </Tip>

    <Tip>
      **Getting Pool Config Key**
      You can get your pool config key from [Meteora Launch](https://launch.meteora.ag) or execute an action with Metsumi to create a DBC config in [Meteora Invent](/developer-guide/invent/actions#dbc).
    </Tip>
  </Step>

  <Step title="Start the development server">
    ```bash theme={"system"}
    pnpm --filter @meteora-invent/scaffold/fun-launch dev
    ```

    <Frame>
      <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/developer-guide/fun-launch-ui.webp?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=880e32b382e483d09ef2e636be29243f" width="3400" height="2016" data-path="images/developer-guide/fun-launch-ui.webp" />
    </Frame>
  </Step>

  <Step title="Build the project">
    ```bash theme={"system"}
    pnpm --filter @meteora-invent/scaffold/fun-launch build
    ```

    <Frame>
      <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/developer-guide/fun-launch-build.webp?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=ed0c61d3823a59bb2db0ea0161ba858f" width="1410" height="876" data-path="images/developer-guide/fun-launch-build.webp" />
    </Frame>
  </Step>
</Steps>
