How it works
Last updated October 21, 2026
Seven steps, each with the exact call WICK makes. Nothing happens that is not on this page.
1. Connect
WICK looks for an injected Solana wallet (Phantom, Solflare, Backpack, or anything exposing signTransaction) and calls connect(). It receives your public key and nothing else. WICK then reads your SOL balance and the balance of your pump.fun creator vault from a public RPC.
2. Describe the coin
Name (up to 32 characters), ticker (1 to 10, A–Z and 0–9), description (up to 500), optional X, Telegram and website links. The preview on the right mirrors the pump.fun coin page.
3. Add the art
PNG, JPG, GIF or WEBP up to 4 MB. Non-square stills are centre-cropped to a square in the browser. Stills are also shrunk under 100 KB (resized, then JPEG quality stepped down) so Arweave storage is free; GIFs are left untouched to keep their animation.
4. Set the first buy
Optional. Amount in SOL, slippage (default 10%) and priority fee (default 0.0005 SOL). The label shows an estimate of tokens from the curve formula; preflight replaces it with the exact number.
5. Preflight
- A throwaway mint keypair is generated in the browser.
POST https://pumpportal.fun/api/trade-localwith{publicKey, action:"create", tokenMetadata:{name,symbol,uri:placeholder}, mint, denominatedInSol:"true", amount, slippage, priorityFee, pool:"pump"}. The response is the serialized, unsigned versioned transaction.simulateTransactionon a public RPC withsigVerify:false,replaceRecentBlockhash:trueandaccounts:[your wallet, your token account for the mint].- WICK renders the result: lamports out, tokens in (read from the simulated token account), compute units, instruction count, program logs. If the simulation errors, the error line from the logs is shown and the light button stays disabled.
Preflight is invalidated whenever you change the name, ticker, buy amount, slippage or priority fee, and must be run again.
6. Light the wick
- Store. The art is uploaded to Arweave through Irys (one wallet signature). A metadata JSON
{name, symbol, description, image, showName:true, createdOn:"https://pump.fun", twitter?, telegram?, website?}is uploaded next (a second signature). WICK keeps the SHA-256 of the metadata bytes for the receipt. With a Pinata key, both go to IPFS instead. - Build. The real mint keypair is generated (or ground for a
pumpsuffix in web workers if you ticked the option). PumpPortal builds the create transaction with the real metadata address. - Simulate. The final transaction is simulated exactly as in preflight. On failure the flow stops here with the program's error; your wallet never opens.
- Sign. The mint keypair signs the transaction in the browser, then your wallet is asked to sign it. The mint secret key is never stored or sent anywhere.
- Confirm. The signed transaction is sent to the first RPC that accepts it and confirmed against the latest blockhash. On a confirmed on-chain error, the error is shown as returned.
7. Receipt
If the receipt option is on (default), WICK assembles the receipt (see receipts) and uploads it to Arweave through Irys with the tags App-Name: WICK, Type: receipt, Mint and Creator (a third signature). The result card links the coin on pump.fun, the explorer, the transaction and the receipt. The launch is also remembered in this browser's local storage so it lists under Receipts.
Dry run
Add ?dry=1 to the launch page address to run the whole flow without broadcasting: storage, build, simulation and signing happen; sending does not. This is how WICK itself is tested.