TonSwap is currently live on the TON mainnet and is in beta, so please use it at your own risk.
TonSwap is a decentralized exchange (DEX) and automated market maker (AMM) that utilizes the Uniswap V2 curve, a financial model commonly used by popular AMMs like PancakeSwap, QuickSwap, and Sushi. This platform enables traders to swap tokens and allows liquidity providers to supply liquidity and earn rewards.
run npm install
This project depends on the executables fift, func . You can build them from source, or you can download the pre compiled binaries.
This project utilizes the latest features of the FunC programming language, including #include
and const
, so please ensure you are using the latest FunC compiler.
If you want to set a specific func path, you can do so by using the FUNC_PATH environment variable export FUNC_PATH=/usr/local/bin/func
the project uses ton-contract-executor package to run Jest based tests.
Use npm run test
to execute the test suite.
run npm run test-bus
this tests are different then the tests in /test/amm-minter.spec.ts
,
Because this tests are using ton-tvm-bus , each tests starts in a single message, and the message passing between contracts is done automatically, messages with statInit are auto deployed , messages find their receiver automatically unlike in the first test suite.
npm run e2e
(this process will generate a deploy wallet during it`s execution)
npm run build:web
- this process will generate json files with hex value for the contract, both for amm-minter.fc
and amm-wallet.fc
;