Smart Contract Wallet with pure native web2 experience written in flutter
Kiwi Wallet is adopting account abstraction (ERC 4337) on mobile using Flutter and Dart.
This project allows you to sign your transactions with passkeys, recover accounts without private keys, and send ERC tokens to recipients via mobile numbers.
Kiwi Wallet also exposes the native way of creating and signing transactions. This is a whole new game changer as you have the option to choose what best suits you.
Kiwi Wallet was developed using the Flutter and Dart programming languages. During the project's development, we encountered several challenges due to the limited availability of tools and resources in the Dart ecosystem. As a result, we had to create specific helper packages from the ground up to facilitate the project's construction.
Thanks to the Covalent API, we were able to seamlessly query transaction data across the blockchain within the Kiwi Wallet. We take pride in being among the select few who have created a mobile application using the newly proposed 4337 feature in Dart.
we built the UI based on an open-source figma design that can be found here: https://www.figma.com/file/LMCVnPuFG7WBlsu0LNPP9b/Crypto-wallet-widgets-(Community)?type=design&node-id=0%3A284&mode=dev
we based the blockchain parts (account interaction and userops) heavily on 4337-dart. and open source flutter package for building web3 mobile native apps easily.
you can find more on: https://github.com/infinit3-labs/4337-Dart