{"id":50496030,"url":"https://github.com/0xfnzero/sol-trade-sdk-nodejs","last_synced_at":"2026-06-02T07:03:05.134Z","repository":{"id":349403622,"uuid":"1201727511","full_name":"0xfnzero/sol-trade-sdk-nodejs","owner":"0xfnzero","description":"A comprehensive, high-performance TypeScript SDK for Solana DEX trading with support for multiple protocols and MEV providers.","archived":false,"fork":false,"pushed_at":"2026-06-01T07:00:34.000Z","size":539,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-01T08:26:04.310Z","etag":null,"topics":["0xfnzero","bonk","copy-trading","fnzero","jito-bundle","letsbonk","nodejs","nozomi","pumpfun","pumpfun-bot","pumpfun-sdk","pumpswap","raydium","raydium-launchlab","raydium-launchpad","raydium-swap","solana","solana-bot","swqos"],"latest_commit_sha":null,"homepage":"https://fnzero.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0xfnzero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-05T04:25:37.000Z","updated_at":"2026-06-01T06:58:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/0xfnzero/sol-trade-sdk-nodejs","commit_stats":null,"previous_names":["0xfnzero/sol-trade-sdk-nodejs"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/0xfnzero/sol-trade-sdk-nodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xfnzero%2Fsol-trade-sdk-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xfnzero%2Fsol-trade-sdk-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xfnzero%2Fsol-trade-sdk-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xfnzero%2Fsol-trade-sdk-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xfnzero","download_url":"https://codeload.github.com/0xfnzero/sol-trade-sdk-nodejs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xfnzero%2Fsol-trade-sdk-nodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33810343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["0xfnzero","bonk","copy-trading","fnzero","jito-bundle","letsbonk","nodejs","nozomi","pumpfun","pumpfun-bot","pumpfun-sdk","pumpswap","raydium","raydium-launchlab","raydium-launchpad","raydium-swap","solana","solana-bot","swqos"],"created_at":"2026-06-02T07:03:03.209Z","updated_at":"2026-06-02T07:03:05.121Z","avatar_url":"https://github.com/0xfnzero.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003ch1\u003e🚀 Sol Trade SDK for Node.js\u003c/h1\u003e\n    \u003ch3\u003e\u003cem\u003eA comprehensive TypeScript SDK for seamless Solana DEX trading\u003c/em\u003e\u003c/h3\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cstrong\u003eA high-performance TypeScript SDK for low-latency Solana DEX trading bots. Built for speed and efficiency, it enables seamless, high-throughput interaction with PumpFun, Pump AMM (PumpSwap), Bonk, Meteora DAMM v2, Raydium AMM v4, and Raydium CPMM for latency-critical trading strategies.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://www.npmjs.com/package/sol-trade-sdk\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/v/sol-trade-sdk.svg\" alt=\"npm\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.npmjs.com/package/sol-trade-sdk\"\u003e\n        \u003cimg src=\"https://img.shields.io/node/v/sol-trade-sdk.svg\" alt=\"Node Version\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"LICENSE\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"License\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Solana-9945FF?style=for-the-badge\u0026logo=solana\u0026logoColor=white\" alt=\"Solana\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/DEX-4B8BBE?style=for-the-badge\u0026logo=bitcoin\u0026logoColor=white\" alt=\"DEX Trading\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/README_CN.md\"\u003e中文\u003c/a\u003e |\n    \u003ca href=\"https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/README.md\"\u003eEnglish\u003c/a\u003e |\n    \u003ca href=\"https://fnzero.dev/\"\u003eWebsite\u003c/a\u003e |\n    \u003ca href=\"https://t.me/fnzero_group\"\u003eTelegram\u003c/a\u003e |\n    \u003ca href=\"https://discord.gg/vuazbGkqQE\"\u003eDiscord\u003c/a\u003e\n\u003c/p\u003e\n\n\u003e ☕ **Support This Project**\n\u003e\n\u003e This SDK is completely free and open source. However, maintaining and continuously updating it requires significant AI computing resources and token consumption. If this SDK helps with your development, consider making a monthly SOL donation — any amount is appreciated and helps keep this project alive!\n\u003e\n\u003e **Donation Wallet:** `6oW7AXz1yRb57pYSxysuXnMs2aR1ha5rzGzReZ1MjPV8`\n\n## 📋 Table of Contents\n\n- [✨ Features](#-features)\n- [📦 Installation](#-installation)\n- [🛠️ Usage Examples](#️-usage-examples)\n  - [📋 Example Usage](#-example-usage)\n  - [⚡ Trading Parameters](#-trading-parameters)\n  - [📊 Usage Examples Summary Table](#-usage-examples-summary-table)\n  - [⚙️ SWQoS Service Configuration](#️-swqos-service-configuration)\n  - [🔧 Middleware System](#-middleware-system)\n  - [🔍 Address Lookup Tables](#-address-lookup-tables)\n  - [🔍 Nonce Cache](#-nonce-cache)\n- [💰 Cashback Support (PumpFun / PumpSwap)](#-cashback-support-pumpfun--pumpswap)\n- [🛡️ MEV Protection Services](#️-mev-protection-services)\n- [📁 Project Structure](#-project-structure)\n- [📄 License](#-license)\n- [💬 Contact](#-contact)\n- [⚠️ Important Notes](#️-important-notes)\n\n---\n\n## 📦 SDK Versions\n\nThis SDK is available in multiple languages:\n\n| Language | Repository | Description |\n|----------|------------|-------------|\n| **Rust** | [sol-trade-sdk](https://github.com/0xfnzero/sol-trade-sdk) | Ultra-low latency with zero-copy optimization |\n| **Node.js** | [sol-trade-sdk-nodejs](https://github.com/0xfnzero/sol-trade-sdk-nodejs) | TypeScript/JavaScript for Node.js |\n| **Python** | [sol-trade-sdk-python](https://github.com/0xfnzero/sol-trade-sdk-python) | Async/await native support |\n| **Go** | [sol-trade-sdk-golang](https://github.com/0xfnzero/sol-trade-sdk-golang) | Concurrent-safe with goroutine support |\n\n## 🔖 Current Release\n\n**npm package:** `sol-trade-sdk@0.1.2`\n\nThis release refreshes PumpFun V2 and USDC quote-pool handling, keeps the default RPC submit lane active alongside SWQoS lanes, and aligns Raydium CPMM fixed-output swaps with the on-chain `swap_base_out` instruction. Trade execution requires a caller-supplied `recentBlockhash` or durable nonce; hot-path execution does not query RPC for blockhash, account, or balance data.\n\n## ✨ Features\n\n1. **PumpFun Trading**: Unified `buy`, `sell`, and `buy_exact_quote_in` flow with automatic legacy or V2 instruction selection for SOL and USDC quote pools\n2. **PumpSwap Trading**: Support for PumpSwap pool trading operations\n3. **Bonk Trading**: Support for Bonk trading operations\n4. **Raydium CPMM Trading**: Support for Raydium CPMM (Concentrated Pool Market Maker) trading operations\n5. **Raydium AMM V4 Trading**: Support for Raydium AMM V4 (Automated Market Maker) trading operations\n6. **Meteora DAMM V2 Trading**: Support for Meteora DAMM V2 (Dynamic AMM) trading operations\n7. **Multiple MEV Protection**: Support for Jito, Nextblock, ZeroSlot, Temporal, Bloxroute, FlashBlock, BlockRazor, Node1, Astralane and other services\n8. **Concurrent Trading**: Submit through every configured SWQoS provider plus the default RPC lane; the first accepted result can return early while slower routes continue submitting\n9. **Unified Trading Interface**: Use unified trading protocol types for trading operations\n10. **Middleware System**: Support for custom instruction middleware to modify, add, or remove instructions before transaction execution\n11. **Shared Infrastructure**: Share expensive RPC and SWQoS clients across multiple wallets for reduced resource usage\n12. **Hot-Path RPC Boundary**: Trade execution uses caller-supplied blockhash or durable nonce and never queries RPC for blockhash, account, or balance data\n\n## 📦 Installation\n\n### Direct Clone (Recommended)\n\nClone this project to your project directory:\n\n```bash\ncd your_project_root_directory\ngit clone https://github.com/0xfnzero/sol-trade-sdk-nodejs\n```\n\nInstall dependencies and build:\n\n```bash\ncd sol-trade-sdk-nodejs\nnpm install\nnpm run build\n```\n\nAdd to your `package.json`:\n\n```json\n{\n  \"dependencies\": {\n    \"sol-trade-sdk\": \"./sol-trade-sdk-nodejs\"\n  }\n}\n```\n\n### Use NPM\n\n```bash\nnpm install sol-trade-sdk@0.1.2\n# or\nyarn add sol-trade-sdk@0.1.2\n# or\npnpm add sol-trade-sdk@0.1.2\n```\n\n## 🛠️ Usage Examples\n\n### 📋 Example Usage\n\n#### 1. Create TradingClient Instance\n\nYou can refer to [Example: Create TradingClient Instance](examples/trading_client.ts).\n\n**Method 1: Simple (single wallet)**\n```typescript\nimport { TradingClient, TradeConfig, SwqosConfig, SwqosRegion } from 'sol-trade-sdk';\n\n// Wallet\nconst payer = Keypair.fromSecretKey(/* your keypair */);\n\n// RPC URL\nconst rpcUrl = \"https://mainnet.helius-rpc.com/?api-key=xxxxxx\";\n\n// Multiple SWQoS services can be configured\nconst swqosConfigs: SwqosConfig[] = [\n  { type: 'Default', rpcUrl },\n  { type: 'Jito', uuid: \"your_uuid\", region: SwqosRegion.Frankfurt },\n  { type: 'Bloxroute', apiToken: \"your_api_token\", region: SwqosRegion.Frankfurt },\n  { type: 'Astralane', apiKey: \"your_api_key\", region: SwqosRegion.Frankfurt },\n];\n\n// Create TradeConfig instance\nconst tradeConfig = new TradeConfig(rpcUrl, swqosConfigs);\n\n// Create TradingClient\nconst client = new TradingClient(payer, tradeConfig);\n```\n\n**Method 2: Shared infrastructure (multiple wallets)**\n\nFor multi-wallet scenarios, create the infrastructure once and share it across wallets.\nSee [Example: Shared Infrastructure](examples/shared_infrastructure.ts).\n\n```typescript\nimport { TradingInfrastructure, InfrastructureConfig } from 'sol-trade-sdk';\n\n// Create infrastructure once (expensive)\nconst infraConfig = new InfrastructureConfig(rpcUrl, swqosConfigs);\nconst infrastructure = new TradingInfrastructure(infraConfig);\n\n// Create multiple clients sharing the same infrastructure (fast)\nconst client1 = TradingClient.fromInfrastructure(payer1, infrastructure);\nconst client2 = TradingClient.fromInfrastructure(payer2, infrastructure);\n```\n\n#### 2. Configure Gas Fee Strategy\n\n```typescript\nimport { GasFeeStrategy } from 'sol-trade-sdk';\n\n// Create GasFeeStrategy instance\nconst gasFeeStrategy = new GasFeeStrategy();\n// Set global strategy\ngasFeeStrategy.setGlobalFeeStrategy(150000, 150000, 500000, 500000, 0.001, 0.001);\n```\n\n#### 3. Build Trading Parameters\n\n```typescript\nimport { TradeBuyParams, DexType, TradeTokenType, DexParamEnum } from 'sol-trade-sdk';\n\nconst buyParams: TradeBuyParams = {\n  dexType: DexType.PumpSwap,\n  inputTokenType: TradeTokenType.WSOL,\n  mint: mintPubkey,\n  inputTokenAmount: buySolAmount,\n  slippageBasisPoints: 500,\n  recentBlockhash: recentBlockhash,\n  // Use DexParamEnum for type-safe protocol parameters\n  extensionParams: { type: 'PumpSwap', params: pumpSwapParams },\n  addressLookupTableAccount: null,\n  waitTransactionConfirmed: true,\n  createInputTokenAta: true,\n  closeInputTokenAta: true,\n  createMintAta: true,\n  durableNonce: null,\n  fixedOutputTokenAmount: null,\n  gasFeeStrategy: gasFeeStrategy,\n  simulate: false,\n};\n```\n\n#### 4. Execute Trading\n\n```typescript\nconst result = await client.buy(buyParams);\nconsole.log(`Transaction signature: ${result.signature}`);\n```\n\n### ⚡ Trading Parameters\n\nFor comprehensive information about all trading parameters including `TradeBuyParams` and `TradeSellParams`, see the Trading Parameters documentation.\n\n#### About ShredStream\n\nWhen using shred to subscribe to events, due to the nature of shreds, you cannot get complete information about transaction events.\nPlease ensure that the parameters your trading logic depends on are available in shreds when using them.\n\n### 📊 Usage Examples Summary Table\n\n| Description | Run Command | Source Code |\n|-------------|-------------|-------------|\n| Create and configure TradingClient instance | `npx ts-node examples/trading_client.ts` | [examples/trading_client.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/trading_client.ts) |\n| Share infrastructure across multiple wallets | `npx ts-node examples/shared_infrastructure.ts` | [examples/shared_infrastructure.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/shared_infrastructure.ts) |\n| PumpFun token sniping trading | `npx ts-node examples/pumpfun_sniper_trading.ts` | [examples/pumpfun_sniper_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/pumpfun_sniper_trading.ts) |\n| PumpFun token copy trading | `npx ts-node examples/pumpfun_copy_trading.ts` | [examples/pumpfun_copy_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/pumpfun_copy_trading.ts) |\n| PumpSwap trading operations | `npx ts-node examples/pumpswap_trading.ts` | [examples/pumpswap_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/pumpswap_trading.ts) |\n| PumpSwap direct trading (via RPC) | `npx ts-node examples/pumpswap_direct_trading.ts` | [examples/pumpswap_direct_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/pumpswap_direct_trading.ts) |\n| Raydium CPMM trading operations | `npx ts-node examples/raydium_cpmm_trading.ts` | [examples/raydium_cpmm_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/raydium_cpmm_trading.ts) |\n| Raydium AMM V4 trading operations | `npx ts-node examples/raydium_amm_v4_trading.ts` | [examples/raydium_amm_v4_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/raydium_amm_v4_trading.ts) |\n| Meteora DAMM V2 trading operations | `npx ts-node examples/meteora_damm_v2_trading.ts` | [examples/meteora_damm_v2_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/meteora_damm_v2_trading.ts) |\n| Bonk token sniping trading | `npx ts-node examples/bonk_sniper_trading.ts` | [examples/bonk_sniper_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/bonk_sniper_trading.ts) |\n| Bonk token copy trading | `npx ts-node examples/bonk_copy_trading.ts` | [examples/bonk_copy_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/bonk_copy_trading.ts) |\n| Custom instruction middleware example | `npx ts-node examples/middleware_system.ts` | [examples/middleware_system.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/middleware_system.ts) |\n| Address lookup table example | `npx ts-node examples/address_lookup.ts` | [examples/address_lookup.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/address_lookup.ts) |\n| Nonce cache (durable nonce) example | `npx ts-node examples/nonce_cache.ts` | [examples/nonce_cache.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/nonce_cache.ts) |\n| Wrap/unwrap SOL to/from WSOL example | `npx ts-node examples/wsol_wrapper.ts` | [examples/wsol_wrapper.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/wsol_wrapper.ts) |\n| Seed trading example | `npx ts-node examples/seed_trading.ts` | [examples/seed_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/seed_trading.ts) |\n| Gas fee strategy example | `npx ts-node examples/gas_fee_strategy.ts` | [examples/gas_fee_strategy.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/gas_fee_strategy.ts) |\n| Hot path trading (zero-RPC) | `npx ts-node examples/hot_path_trading.ts` | [examples/hot_path_trading.ts](https://github.com/0xfnzero/sol-trade-sdk-nodejs/blob/main/examples/hot_path_trading.ts) |\n\n### ⚙️ SWQoS Service Configuration\n\nWhen configuring SWQoS services, note the different parameter requirements for each service:\n\n- **Jito**: The first parameter is UUID (if no UUID, pass an empty string `\"\"`)\n- **Other MEV services**: The first parameter is the API Token\n\n#### Custom URL Support\n\nEach SWQoS service supports an optional custom URL parameter:\n\n```typescript\n// Using custom URL\nconst jitoConfig: SwqosConfig = {\n  type: 'Jito',\n  uuid: \"your_uuid\",\n  region: SwqosRegion.Frankfurt,\n  customUrl: \"https://custom-jito-endpoint.com\"\n};\n\n// Using default regional endpoint\nconst bloxrouteConfig: SwqosConfig = {\n  type: 'Bloxroute',\n  apiToken: \"your_api_token\",\n  region: SwqosRegion.NewYork\n};\n```\n\n**URL Priority Logic**:\n- If a custom URL is provided, it will be used instead of the regional endpoint\n- If no custom URL is provided, the system will use the default endpoint for the specified region\n- This allows for maximum flexibility while maintaining backward compatibility\n\nWhen using multiple MEV services, you need to use `Durable Nonce`. You need to use the `fetchNonceInfo` function to get the latest `nonce` value, and use it as the `durableNonce` when trading.\n\n---\n\n### 🔧 Middleware System\n\nThe SDK provides a powerful middleware system that allows you to modify, add, or remove instructions before transaction execution. Middleware executes in the order they are added:\n\n```typescript\nimport { MiddlewareManager, ValidationMiddleware, TimerMiddleware } from 'sol-trade-sdk';\n\nconst manager = new MiddlewareManager()\n  .addMiddleware(new FirstMiddleware())   // Executes first\n  .addMiddleware(new SecondMiddleware())  // Executes second\n  .addMiddleware(new ThirdMiddleware());  // Executes last\n```\n\n### 🔍 Address Lookup Tables\n\nAddress Lookup Tables (ALT) allow you to optimize transaction size and reduce fees by storing frequently used addresses in a compact table format.\n\n```typescript\nimport { fetchAddressLookupTableAccount, AddressLookupTableCache } from 'sol-trade-sdk';\n\n// Fetch ALT from chain\nconst alt = await fetchAddressLookupTableAccount(rpc, altAddress);\nconsole.log(`ALT contains ${alt.addresses.length} addresses`);\n\n// Use cache for performance\nconst cache = new AddressLookupTableCache(rpc);\nawait cache.prefetch([altAddress1, altAddress2, altAddress3]);\nconst cached = cache.get(altAddress1);\n```\n\n### 🔍 Durable Nonce\n\nUse Durable Nonce to implement transaction replay protection and optimize transaction processing.\n\n```typescript\nimport { fetchNonceInfo, NonceCache } from 'sol-trade-sdk';\n\n// Fetch nonce info\nconst nonceInfo = await fetchNonceInfo(rpc, nonceAccount);\n```\n\n## 💰 Cashback Support (PumpFun / PumpSwap)\n\nPumpFun and PumpSwap support **cashback** for eligible tokens: part of the trading fee can be returned to the user. The SDK **must know** whether the token has cashback enabled so that buy/sell instructions include the correct accounts.\n\n- **When params come from RPC**: If you use `PumpFunParams.fromMintByRpc` or `PumpSwapParams.fromPoolAddressByRpc`, the SDK reads `isCashbackCoin` from chain—no extra step.\n- **When params come from event/parser**: If you build params from trade events (e.g. [sol-parser-sdk](https://github.com/0xfnzero/sol-parser-sdk)), you **must** pass the cashback flag into the SDK:\n  - **PumpFun**: Set `isCashbackCoin` when building params from parsed events.\n  - **PumpSwap**: Set `isCashbackCoin` field when constructing params manually.\n\n## 🛡️ MEV Protection Services\n\nYou can apply for a key through the official website: [Community Website](https://fnzero.dev/swqos)\n\n- **Jito**: High-performance block space\n- **ZeroSlot**: Zero-latency transactions\n- **Temporal**: Time-sensitive transactions\n- **Bloxroute**: Blockchain network acceleration\n- **FlashBlock**: High-speed transaction execution with API key authentication\n- **BlockRazor**: High-speed transaction execution with API key authentication\n- **Node1**: High-speed transaction execution with API key authentication\n- **Astralane**: Blockchain network acceleration\n\n## 📁 Project Structure\n\n```\nsrc/\n├── common/           # Common functionality and tools\n├── constants/        # Constant definitions\n├── instruction/      # Instruction building\n│   └── utils/        # Instruction utilities\n├── swqos/            # MEV service clients\n├── trading/          # Unified trading engine\n│   ├── common/       # Common trading tools\n│   ├── core/         # Core trading engine\n│   ├── middleware/   # Middleware system\n│   └── factory.ts    # Trading factory\n├── utils/            # Utility functions\n│   ├── calc/         # Amount calculation utilities\n│   └── price/        # Price calculation utilities\n└── index.ts          # Main library file\n```\n\n## 📄 License\n\nMIT License\n\n## 💬 Contact\n\n- Official Website: https://fnzero.dev/\n- Project Repository: https://github.com/0xfnzero/sol-trade-sdk-nodejs\n- Telegram Group: https://t.me/fnzero_group\n- Discord: https://discord.gg/vuazbGkqQE\n\n## ⚠️ Important Notes\n\n1. Test thoroughly before using on mainnet\n2. Properly configure private keys and API tokens\n3. Pay attention to slippage settings to avoid transaction failures\n4. Monitor balances and transaction fees\n5. Comply with relevant laws and regulations\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xfnzero%2Fsol-trade-sdk-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xfnzero%2Fsol-trade-sdk-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xfnzero%2Fsol-trade-sdk-nodejs/lists"}