AutoSwappr is a Starknet-based DeFi solution designed for automated token swapping, offering a one-stop solution to guard against highly volatile non-stable crypto assets. By leveraging DEX aggregators, it simplifies the process of auto-swapping non-stable crypto assets to stable assets ensuring secure and seamless token swap processes with minimal manual intervention.
- Automated Token Swapping: subscription-based system for automated conversion of assets
- Multi-Route Support: flexible routing options for complex token swaps
- Real-time Event Tracking: comprehensive event logging for swaps and subscriptions
- Upgradeable Architecture: leverages OpenZeppelin's upgradeable contract
- Custom Route Configuration: built-in support for multi-token swap routes
AutoSwappr is built on Starknet and implements:
- OpenZeppelin standards for upgradeability
- DEX aggregators for swap execution
- Event-driven architecture for transaction tracking
To set up and run the project locally, ensure you have the following installed:
-
Fork the Repository
-
Clone the Repository to your local machine
git clone https://github.com/BlockheaderWeb3-Community/auto-swap
cd auto-swap
- Set Up Development Environment To set up development environment:
# Configure Scarb version
asdf local scarb 2.8.5
# Configure StarkNet Foundry
asdf local starknet-foundry 0.31.0
- Build the Project:
scarb build
The project uses Scarb as its build tool. To build the contracts:
scarb build
Before running the tests,
- Ensure the
RPC_URL
environment variable is set locally in your shell:
export RPC_URL=https://starknet-mainnet.public.blastapi.io/rpc/v0_7
- Then save and reload your shell:
source ~/.zshrc
- After setting the variable, verify it in your shell; this should output your rpc url in your terminal:
echo $RPC_URL
- Proceed to run snforge test:
export RPC_URL=https://starknet-mainnet.public.blastapi.io/rpc/v0_7
snforge test
We welcome contributions! Please follow these steps:
- Fork the repository
- Create your feature branch (git checkout -b revoke-allowance)
- Commit your changes (git commit -m 'test: revoke allowance')
- Run
bash test_local.sh
to ensure you have a consistent environment with our workflow actions; (Please make you have successfully setRPC_URL
with this command -export RPC_URL=https://starknet-mainnet.public.blastapi.io/rpc/v0_7
). All tests must pass locally before proceeding to the next action - Push to the branch (git push origin revoke-allowance)
- Open a Pull Request
- Ensure your branch is up to date with main
- Include relevant test cases
- Update documentation as needed
- Provide a detailed description of changes
- Request review from maintainers
For support and queries:
- Open an issue in the GitHub repository
- Join our Telegram channel
Built with ❤️ by the BlockheaderWeb3 Community