git clone https://github.com/soldex-ai/soldex-token-swap-SC.git
sudo apt install nodejs
sudo apt-get install libudev-dev cargo
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
sh -c "$(curl -sSfL https://release.solana.com/stable/install)"
spl-token-cli
cargo install spl-token-cli
solana-keygen new --outfile ~/.config/solana/mainnet.json
~/.config/solana/mainnet.json
A8wk...Xu
[you can see it by typing solana-keygen pubkey
]throw garden ... low response
. Store seed phrase in a safe place!solana config set --keypair ~/.config/solana/mainnet.json --url https://api.mainnet.solana.com
solana config get
Config File: </path_to>/.config/solana/cli/config.yml
RPC URL: https://api.mainnet.solana.com
WebSocket URL: wss://api.mainnet.solana.com/ (computed)
Keypair Path: </path_to>/.config/solana/mainnet.json
Commitment: confirmed
RPC URL
and Keypair Path
solana address
Keypair Path
spl-token wrap 1.1
Wrapping 1.1 SOL into <your_account_address>
Signature: <your tx signature>
spl-token accounts
Token Balance
So11111111111111111111111111111111111111112 1.09796072
cd soldex-token-swap-SC/js
js
directory.nano .env
.env
file1LIVE=1 2CLUSTER=mainnet-beta 3RPC_URL='https://api.mainnet-beta.solana.com' 4TOKEN_SWAP_PROGRAM_ID='FvpxMskJCC43Nswc3W3HnyE4fWcXsiawzbkPfRYpDYmD' 5FEE_OWNER_KEY='63g44H9eJAc4DuAxv1vRMbTqZUmrtzFD247fTfuRVgh5' 6OWNER_TRADING_FEE_NUMERATOR=5 7OWNER_TRADING_FEE_DENOMINATOR=10000 8TRADING_FEE_NUMERATOR=20 9TRADING_FEE_DENOMINATOR=10000 10OWNER_WITHDRAW_FEE_NUMERATOR=0 11OWNER_WITHDRAW_FEE_DENOMINATOR=10000 12HOST_FEE_NUMERATOR=0 13HOST_FEE_DENOMINATOR=100 14 15# Variables to set 16WALLET_FILE='<Set full path /home/user/.config/solana/mainnet.json>' 17BASE_MINT_TOKEN='CH74tuRLTYcxG7qNJCsV9rghfLXJCQJbsu7i52a8F1Gn' 18BASE_AMOUNT=10 19QUOTE_MINT_TOKEN='So11111111111111111111111111111111111111112' 20QUOTE_AMOUNT=1 21LP_MINT_DECIMALS=9
TOKEN_SWAP_PROGRAM_ID
and FEE_OWNER_KEY
:TOKEN_SWAP_PROGRAM_ID='FvpxMskJCC43Nswc3W3HnyE4fWcXsiawzbkPfRYpDYmD'
FEE_OWNER_KEY='63g44H9eJAc4DuAxv1vRMbTqZUmrtzFD247fTfuRVgh5'
BASE_MINT_TOKEN
. It’s the first token in your pool token pair. SOLX token address is: BASE_MINT_TOKEN='CH74tuRLTYcxG7qNJCsV9rghfLXJCQJbsu7i52a8F1Gn'
BASE_AMOUNT
is the inited amount of the first token in your pool:BASE_AMOUNT=10
QUOTE_MINT_TOKEN
. It’s the second token in your pool token pair. Wrapped SOL token address is: QUOTE_MINT_TOKEN='So11111111111111111111111111111111111111112'
QUOTE_AMOUNT
is the inited amount of the second token in your pool:QUOTE_AMOUNT=1
QUOTE_AMOUNT / BASE_AMOUNT = TOKEN_PRICE
11 / 10 = 0.1 2where 1 SOLX = 0.1 SOL 3or 41 SOL = 10 SOLX
.env
file.~/.config/solana/mainnet.json
soldex-token-swap-SC
npm install
cd js; npm run create-pool; cd -
1fetchedTokenSwap.tokenProgramId: TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA :TOKEN_PROGRAM_ID :TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA 2fetchedTokenSwap.tokenAccountA: J7KrzLz58u44WJQjnfVRWqfG3v65voUUfJd94YuAffNo :tokenAccountA :HDosqJarQUqUWHTDP7GLZj6ukGTkn1GWYZreWQgrR4HN 3fetchedTokenSwap.tokenAccountB: 8Wx3GYEt1wMNpuFswvEuncGyQc8UZyo2fZhpyLVjgsyx :tokenAccountB :J7FoUw4mL3GBucvn7sup7Sg2HfxiumPA61KG63p4hU1h 4tokenSwap.mintA: CH74tuRLTYcxG7qNJCsV9rghfLXJCQJbsu7i52a8F1Gn :mintA.publicKey :CH74tuRLTYcxG7qNJCsV9rghfLXJCQJbsu7i52a8F1Gn 5tokenSwap.mintB: So11111111111111111111111111111111111111112 :mintB.publicKey :So11111111111111111111111111111111111111112 6tokenSwap.poolToken: 3jkJdWKdst2rL2ab7HKong1YNXf2pwgfptizoRFa2pME 7tokenSwap.feeAccount: GqzfNL9gre1zj6roZw3CJtfwK1aYe6dzG3wCvXeoiqG4 8TRADING_FEE_NUMERATOR: 20 :tokenSwap.tradeFeeNumerator.toNumber() :20 9TRADING_FEE_DENOMINATOR: 10000 :tokenSwap.tradeFeeDenominator.toNumber() :10000 10OWNER_TRADING_FEE_NUMERATOR: 5 :tokenSwap.ownerTradeFeeNumerator.toNumber() :5 11OWNER_TRADING_FEE_DENOMINATOR: 10000 :tokenSwap.ownerTradeFeeDenominator.toNumber() :10000 12OWNER_WITHDRAW_FEE_NUMERATOR: 0 :tokenSwap.ownerWithdrawFeeNumerator.toNumber() :0 13OWNER_WITHDRAW_FEE_DENOMINATOR: 10000 :tokenSwap.ownerWithdrawFeeDenominator.toNumber() :10000 14HOST_FEE_NUMERATOR: 0 :tokenSwap.hostFeeNumerator.toNumber() :0 15HOST_FEE_DENOMINATOR: 100 :tokenSwap.hostFeeDenominator.toNumber() :100 16curveType: 0 :tokenSwap.curveType :0