About PuddleSwap
PuddleSwap is a static, no-backend DEX for Monad Testnet. It runs entirely in your browser and talks to the Monad RPC directly. There is no app server, no account, no KYC, and no analytics.
Why this exists
Monad Testnet needs a working DEX before mainnet so builders can test the parts of their dapp that depend on a live AMM: routing, slippage, LP token handling, MEV exposure, integrations with other contracts. PuddleSwap is one of those parts. It is a UniswapV2 fork deployed to Monad Testnet, deliberately constrained to star routing through three core tokens so the routing surface stays small and predictable.
If your dapp needs a DEX to test against on Monad Testnet, this is one. If it needs more than one, please use more than one.
Who built it
PuddleSwap is built and maintained by port. Source is on GitHub and contributions are welcome.
What is and is not collected
Nothing is collected. The frontend is a static React app served from Vercel. The wallet talks directly to the Monad Testnet RPC (testnet-rpc.monad.xyz by default) for chain reads and to your wallet for signed transactions. PuddleSwap does not run an indexer, does not store user data, does not set tracking cookies, and does not have a login or account system.
What you see in your network tab while using PuddleSwap:
- Calls to the Monad RPC for chain reads.
- Vercel-hosted static asset requests for the page itself.
- Optional WalletConnect calls if you connect via WalletConnect.
That is the entire data path.
Unaudited software
PuddleSwap is unaudited. Testnet tokens have no real value, but the contract code is still real code. Inspect any pool or token you have not registered yourself before adding liquidity. The smart contracts are stock UniswapV2 fork code; the sources are verified on Monadscan, MonadVision, and Socialscan.
Contact
For bugs, feature requests, or questions, the fastest path is the GitHub issues page or DMs on X. PuddleSwap does not have a Discord, support email, or other contact surfaces.
Ready to use it? Open the swap, browse active pools, or start with How to Add Monad Testnet to MetaMask.