Murphy Logo Murphy

Recurring Setup Form

Murphy component for creating Jupiter Recurring DCA Orders on Solana mainnet

Recurring Setup Form

Setup Recurring DCA Order

Please connect your wallet to continue.

Installation

Install dependencies

pnpm add @solana/web3.js @solana/wallet-adapter-react sonner

Add Wallet Provider Make sure you have added the Wallet Provider to your application. If not, follow the steps in the Connect Wallet Button guide first.

Add RecurringSetupForm

pnpm dlx shadcn@canary add https://www.murphyai.dev/r/RecurringSetupForm.json

Basic Usage

import { RecurringSetupForm } from "@/components/ui/murphy/Jupiter-Recurring/RecurringSetupForm";

export default function MyPage() {
  return (
    <div>
      <h1 className="text-xl font-bold mb-2">Create Recurring DCA Order</h1>
      <RecurringSetupForm />
    </div>
  );
}

Features

  • Connects to Solana wallet (mainnet)
  • Create real recurring DCA order via Jupiter Recurring API (no mock)
  • Select source/target token, amount, interval, number of orders
  • Murphy composable UI, atomic, shadcn style
  • Loading, success, error state with Solscan link
  • No test or fake data, all on-chain

Props

NameTypeDefaultDescription
onOrderCreated(orderId: string) => voidundefinedCallback when order is created (txid)
classNamestringundefinedAdditional CSS classes

Types

export type RecurringSetupFormValues = {
  inputMint: string;
  outputMint: string;
  inAmount: number | undefined;
  numberOfOrders: number;
  interval: number; // seconds
  minPrice?: number | null;
  maxPrice?: number | null;
  startAt?: number | null;
};

API

Success State

Displays Solscan link to transaction:

Success! Tx: <a href="https://solscan.io/tx/{txid}" target="_blank">{txid}</a>

Error Handling

Shows error message from API or wallet.


Note: This component is fully mainnet, no mock/test data, and is composable for any Solana dApp, dashboard, or wallet.