pump-ts-vanity

Generate vanity Solana addresses in TypeScript via an async iterator.

Updated Mar 11, 2026
One-click install
npx skills add https://github.com/x402agent/NanoSolana --skill pump-ts-vanity-x402agent
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pump-ts-vanity
Source: https://github.com/x402agent/NanoSolana/tree/main/pump-fun-sdk-main/skills/pump-ts-vanity
Command: npx skills add https://github.com/x402agent/NanoSolana --skill pump-ts-vanity-x402agent

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Vanity address generation for Solana can be slow and blocking when using naive loops. This educational, single-threaded TypeScript implementation demonstrates an approach that yields periodically and exposes an async generator API to stream matches.

Core Features & Use Cases

  • Async generator for streaming vanity address matches using Keypair.generate() and a matcher.
  • First-match and batch-result patterns supported for quick prototyping.
  • Memory safety considerations with best-effort zeroization of secret keys after use.

Quick Start

Run the vanity generator with your desired prefix to begin generating addresses until a match is found.

Frequently Asked Questions about pump-ts-vanity

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate a Solana vanity address in TypeScript without blocking the event loop?

To generate a Solana vanity address without blocking, use an async generator that yields periodically while running Keypair.generate() matchers, allowing event-loop yielding for streaming vanity address matches.

What is the best way to stream Solana vanity address prefixes during prototyping?

Streaming Solana vanity address prefixes is best handled via an async iterator API that supports first-match and batch-result patterns, yielding generated keypairs progressively during prototyping.

Can I use Keypair.generate with TypeScript to find custom Solana address prefixes?

Yes, you can use Keypair.generate within a TypeScript async generator to find custom Solana address prefixes by applying a matcher to filter the generated keypairs.

How does memory zeroization work for secret keys in a TypeScript vanity address generator?

Memory zeroization in a TypeScript vanity address generator provides best-effort security by clearing secret key bytes from memory after the Keypair is used or matched.

Why does Solana vanity address generation get slow when using naive loops?

Solana vanity address generation becomes slow using naive loops because the synchronous iteration blocks the single thread, whereas an async generator yields periodically to prevent event-loop freezing.

Does this TypeScript vanity address generator support batch-result patterns for multiple matches?

Yes, the TypeScript vanity address generator supports both first-match and batch-result patterns, allowing developers to collect multiple matching Solana keypairs during a single generation run.