{"id":25825568,"url":"https://github.com/anotherrusty/raydium-pumpfun-smart-contract","last_synced_at":"2025-04-05T00:07:55.475Z","repository":{"id":273106904,"uuid":"918720555","full_name":"AnotherRusty/raydium-pumpfun-smart-contract","owner":"AnotherRusty","description":"pumpfun(pump.fun) smart contract. usafun smart contract based in original pumpfun contract. raydium migration","archived":false,"fork":false,"pushed_at":"2025-02-20T17:49:29.000Z","size":355,"stargazers_count":98,"open_issues_count":0,"forks_count":95,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T23:06:42.949Z","etag":null,"topics":["bonding-curve","pump-fun","rust","tokenlaunchpad"],"latest_commit_sha":null,"homepage":"","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/AnotherRusty.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}},"created_at":"2025-01-18T17:23:15.000Z","updated_at":"2025-03-17T20:54:55.000Z","dependencies_parsed_at":"2025-01-18T18:42:14.211Z","dependency_job_id":"a68588a0-498e-4ef1-af93-8654b4c630c6","html_url":"https://github.com/AnotherRusty/raydium-pumpfun-smart-contract","commit_stats":null,"previous_names":["anotherrusty/pumpfun-smart-contract","anotherrusty/solana-pumpfun-smart-contract","anotherrusty/raydium-pumpfun-smart-contract"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnotherRusty%2Fraydium-pumpfun-smart-contract","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnotherRusty%2Fraydium-pumpfun-smart-contract/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnotherRusty%2Fraydium-pumpfun-smart-contract/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnotherRusty%2Fraydium-pumpfun-smart-contract/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AnotherRusty","download_url":"https://codeload.github.com/AnotherRusty/raydium-pumpfun-smart-contract/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247266564,"owners_count":20910836,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["bonding-curve","pump-fun","rust","tokenlaunchpad"],"created_at":"2025-02-28T14:06:16.958Z","updated_at":"2025-04-05T00:07:55.454Z","avatar_url":"https://github.com/AnotherRusty.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pumpfun smart contract fork implementing all main functionalities\nThis repo gives basic understanding on the pumpfun(pump.fun) smart contracts. To get the full codebase of smart contracts, you can contact me in my profile.\n\n## USAFun(Original pumpfun smart contract forking)\nThe following video shows how USAFun smart contract works. The USAFun smart contract is built by forking original pumpfun smart contract and adding its own features\n\n## How Works\n### 1. Administrative Roles\n\n- Sets initial parameters(usafun config) and whitelist\n- Can Modify protocol parameters\n- Controls whitelist status\n- Fee recipient\n### 2. Bonding Curve Mechanism\nThe protocol implements a constant product bonding curve (x * y = k).\n\n```\nTEST_DECIMALS = 6;\nTEST_CURVE_LIMIT_LAMPORT = 4_000_000_000;\nTEST_VIRTUAL_RESERVES_LAMPORT = 2_000_000_000;\nTEST_RESERVE_TOKEN = 950_000_000_000;\nTEST_TOKEN_SUPPLY = 1_000_000_000_000;\n```\n\nThe bonding curve ensures price discovery and continuous liquidity for the token.\n### 3. Create a  Bonding Curve\n\n- Initialize curve parameters\n- Enable whitelist\n- Configure initial purchases\n\n### 4. Fee structure\n\nThe fee rate is 1%(customizable) and it is taken for all the trades before and after the curve by the admin wallet\n \n### 5. Migration\n\nMigration is a critical process that occurs once the bonding curve has been completed and the tokens are empty. \n\nPeople buy on the bonding curve and the market cap is growing. Once it reaches a market cap of $100k, the smart contract runs a CPI (Cross-Program Invocation) call to create a Raydium AMM.\n\n## Some Transactions Link\n### 1. Created Coin Address:\n  - https://solscan.io/token/F3VijpV5wpDAcG4LtDjDyoz3DEagRnoMSnVdCPpCUMYg?cluster=devnet\n### 2. Bonding Curve:\n  - https://solscan.io/tx/eQ1bUPFunyQVScsiHsd2Q6ktYf3bTgPkxEGSxBxpsDawnay38MW8w1UPJ37KUnLRqHpQv5i77HN9eRZBLFZL9Lh?cluster=custom\u0026customUrl=https://devnet.helius-rpc.com/?api-key=7387c4ee-fe6a-43a6-96ea-05e6534aa500\n### 3. Bonding Curve PDA Address:\n  - E2eDwJtbiXnnTnD1S3H6ESxCxZS6MamWhv45cB6uKXiX\n### 4. Swap Tx\n  - https://solscan.io/tx/3z9puJ6Jcum1iQ9eA5q6hxoaVAKyKGkFFJuwqBjcrmgrA6xbpiLxwB5GDpD3cD7Wzuo48NViAZKKT9u72N6QSxPS?cluster=devnet\n### 5. Bonding Curve Reaching Tx\n  - https://solscan.io/tx/2QtdKZrhYuwJtWrd7dhja8mnNqZSmR4qbpo9iSLnrhkZADF3zzm8DojYVisvVaiGAkgmoU4ocSyo65EewJkpjvNo?cluster=devnet\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanotherrusty%2Fraydium-pumpfun-smart-contract","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanotherrusty%2Fraydium-pumpfun-smart-contract","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanotherrusty%2Fraydium-pumpfun-smart-contract/lists"}