├── CONTRIBUTING.md └── README.md /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Guidelines 2 | 3 | Please ensure your pull request adheres to the following guidelines: 4 | 5 | - Search previous suggestions before making a new one, as yours may be a duplicate. 6 | - Make sure your contribution is useful before submitting. 7 | - Make an individual pull request for each suggestion. 8 | - Use the following format: `[name](link).` 9 | - New categories, or improvements to the existing categorization are welcome. 10 | - Keep descriptions short and simple, but descriptive. 11 | - Start the description with a capital and end with a full stop/period. 12 | - Check your spelling and grammar. 13 | - Make sure your text editor is set to remove trailing whitespace. 14 | - The pull request should have a useful title and include a link to the package and why it should be included. 15 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

Awesome Modular Accounts

2 |

3 | 4 | awesome list badge 5 | 6 |

7 | 8 |

📖 A curated list of resources dedicated to Modular Smart Accounts

9 |

Please check the contribution guidelines for information on formatting and writing pull requests.

10 | 11 | ## What are modular accounts? 12 | 13 | Modular Accounts are a subset of Smart Accounts (also known as Account Abstraction) whose design is modular, meaning that features (aka modules) can be added to and removed from the account after deployment. 14 | 15 | For a list of general account-abstraction resources see [awesome-account-abstraction](https://github.com/4337Mafia/awesome-account-abstraction). 16 | 17 | ## Writing 18 | 19 | - [WTF is modular Account Abstraction](https://mirror.xyz/konradkopp.eth/7Q3TrMFgx2VbZRKa7UEaisIMjimpMABiqGYo00T9egA) 20 | - [Modular Account Abstraction for Everyone Else (2 part series)](https://blog.rhinestone.wtf/part-1-modular-account-abstraction-for-everyone-else-84567422bc46) 21 | - [ERC-7579: Minimal Modular Smart Accounts](https://erc7579.com/) 22 | - [ERC-6900: Modular Smart Contract Accounts and Plugins](https://eips.ethereum.org/EIPS/eip-6900) 23 | - [Making Biconomy Smart Accounts Modular](https://www.biconomy.io/post/making-biconomy-smart-accounts-modular) 24 | - [Multchain Validation Module - sign once, execute on multiple chains](https://www.biconomy.io/post/multchain-validation-smart-account-module) 25 | - [Introducing Kernel — Minimal & Extensible Smart Contract Account for ERC-4337 Wallets](https://docs.zerodev.app/blog/kernel-minimal-extensible-account-for-aa-wallets) 26 | - [Safe{Core} Protocol](https://github.com/safe-global/safe-core-protocol-specs/blob/main/whitepaper.pdf) 27 | - [Module ideas for product inspiration](https://rhinestone.notion.site/Module-ideas-for-product-inspo-338100a2c99540f490472b8aa839da11) 28 | - [Safe Smart Accounts & Diamond Proxies](https://safe.mirror.xyz/P83_rVQuUQJAM-SnMpWvsHlN8oLnCeSncD1txyMDqpE) 29 | - [Safe Modular Smart Account Architecture – Explained](https://safe.mirror.xyz/t76RZPgEKdRmWNIbEzi75onWPeZrBrwbLRejuj-iPpQ) 30 | - [A foundational layer to modular account abstraction](https://blog.rhinestone.wtf/a-foundational-layer-to-modular-account-abstraction-e7b21ae56034) 31 | - [Teaming up with Biconomy to launch the first module store for smart accounts](https://blog.rhinestone.wtf/teaming-up-with-biconomy-to-launch-the-first-module-store-for-smart-accounts-445233f919bc) 32 | - [ModuleKit deep dive](https://blog.rhinestone.wtf/modulekit-deep-dive-ad84ee0797c6) 33 | 34 | ## Talks & Podcasts 35 | 36 | - [The future of account abstraction is modular](https://www.youtube.com/watch?v=DP_ThXdPazY) at ETHCC 2023 37 | - [Account Abstraction: Modular Smart Accounts](https://www.youtube.com/watch?v=NvDmhyb0O6A) at ETHCC 2023 38 | - [Alchemy & Account Abstraction Infrastructure](https://www.devsdosomething.fm/episodes/alchemy-account-abstraction-infrastructure) on Devs Do Something 39 | - [Konrad Kopp, Co-Founder of Rhinestone](https://open.spotify.com/episode/3rlCBdKg9CBh4lsY210ko8) 40 | - [Account Abstraction with Will Hennesy & Noam Hurwitz](https://open.spotify.com/episode/6zYI5nvpsDLowV0IYORGpx) 41 | - [Derek Chiang, CEO of ZeroDev](https://open.spotify.com/episode/0Y9a3SAhizJq0Lg6TzM4KO?si=b8c9ff0ff1514487) 42 | - [Ahmed Al-Balaghi, CEO of Biconomy](https://open.spotify.com/episode/114i9xGwQiJv4WSBnkBZrM?si=afb04a6fcb39413a) 43 | 44 | ## Accounts 45 | 46 | - [Smart Account](https://github.com/bcnmy/scw-contracts/tree/master/contracts/smart-account) by Biconomy 47 | - [Dynamic Account](https://github.com/thirdweb-dev/contracts/blob/dc25a7c8c4130a730788b2b70304d7b7fc2c8f36/contracts/prebuilts/account/dynamic/DynamicAccount.sol) by thirdweb 48 | - [Fun](https://github.com/fun-xyz/funkit-contracts) 49 | - [Kernel](https://github.com/zerodevapp/kernel) by ZeroDev 50 | - [Safe](https://github.com/safe-global/safe-contracts) 51 | - [Soul Wallet](https://github.com/SoulWallet/soul-wallet-contract) 52 | 53 | ## Modules 54 | 55 | - [Module examples](https://github.com/rhinestonewtf/modulekit-examples) by Rhinestone 56 | - [MultiChainECDSAValidator](https://github.com/bcnmy/scw-contracts/blob/master/contracts/smart-account/modules/MultichainECDSAValidator.sol) by Biconomy 57 | - [Session Keys](https://github.com/bcnmy/scw-contracts/blob/master/contracts/smart-account/modules/SessionKeyManagerModule.sol) by Biconomy 58 | - [Passkeys](https://github.com/bcnmy/scw-contracts/blob/master/contracts/smart-account/modules/PasskeyRegistryModule.sol) by Biconomy 59 | - [One-of-N multisig](https://github.com/zerodevapp/kernel/blob/main/src/validator/MultiECDSAValidator.sol) by ZeroDev 60 | - [Session Keys](https://github.com/zerodevapp/kernel/blob/main/src/validator/SessionKeyValidator.sol) by ZeroDev 61 | - [Kill switch](https://github.com/zerodevapp/kernel/blob/main/src/validator/KillSwitchValidator.sol) by ZeroDev 62 | - Stealth address by MoonChute (built on [Zerodev](https://github.com/moonchute/stealth-address-aa-plugin/blob/main/src/zerodev/StealthAddressValidator.sol) and [Biconomy](https://github.com/moonchute/stealth-address-aa-plugin/blob/main/src/biconomy/StealthAddressRegistryModule.sol)) 63 | - [Two-factor Auth (2FA)](https://github.com/moonchute/kernel-2fa-plugin/blob/feat/two-factor-validator/src/validator/TwofaValidator.sol) by MoonChute (built on ZeroDev) 64 | - [Session keys that can sign messages](https://github.com/RollaProject/kernel/blob/feat/session_key_owned/src/validator/SessionKeyOwnedValidator.sol) by Rolla (built on ZeroDev) 65 | - [BLS Validator](https://github.com/getwax/wax/blob/main/packages/plugins/src/kernel/BLSValidator.sol) by Wax 66 | - [Account-native flashloans](https://github.com/dialecticch/safe-flashloan/tree/main) by Dialectic 67 | - [Zodiac](https://github.com/gnosis/zodiac/tree/master) by Gnosis 68 | - [Vesting Module](https://github.com/Phala-Network/safe-vest-module/blob/master/contracts/VestingModule.sol) by Phala Network 69 | - [Gelato module](https://github.com/gelatodigital/gelato-safe-module/blob/master/contracts/GelatoSafeModule.sol) by Gelato 70 | - [Revoke module](https://github.com/emilianobonassi/revoke-safe-module/blob/main/src/RevokeModule.sol) by Emiliano Bonassi 71 | - [zk Connect verifier](https://github.com/emilianobonassi/zkSafe/blob/main/contracts/src/zkConnectModule.sol) by Emiliano Bonassi 72 | - [Staking](https://github.com/pythonpete32/bico-safe-module/blob/main/src/BicoSafeModule.sol) by pythonpete 73 | - [MultiGuard/Hooks](https://github.com/germartinez/multi-transaction-guard/blob/main/contracts/MultiGuard.sol) by German Martinez 74 | - [DAO module](https://github.com/bitbeckers/moloch-safe-modules/tree/main/src) by bitbeckers 75 | - [Emergency modules](https://github.com/onchainification/safe_panic_modules/tree/main/contracts/modules) by onchainification 76 | - [Token withdrawal by third party](https://github.com/roleengineer/token-withdrawal-module/blob/master/src/TokenWithdrawalModule.sol) by roleengineer 77 | - [Dump shitcoins automatically](https://github.com/onchainification/CowDumper/tree/main) by onchainification 78 | - [Allowance module](https://github.com/safe-global/safe-modules/blob/master/allowances/contracts/AllowanceModule.sol) by Safe 79 | - [Whitelist guard/hook](https://github.com/gnosis/zodiac-guard-scope/blob/main/contracts/ScopeGuard.sol) by Safe 80 | - [Keystore](https://github.com/SoulWallet/soul-wallet-contract/blob/develop/contracts/modules/keystore/KeyStoreModule.sol) by Soul Wallet 81 | - [Social Recovery](https://github.com/SoulWallet/soul-wallet-contract/blob/develop/contracts/modules/SocialRecoveryModule/SocialRecoveryModule.sol) by Soul Wallet 82 | - [Security Control](https://github.com/SoulWallet/soul-wallet-contract/blob/develop/contracts/modules/SecurityControlModule/SecurityControlModule.sol) by Soul Wallet 83 | - [Daily Limit](https://github.com/SoulWallet/soul-wallet-contract/blob/d0895e0d0990dd25f39254fee707d7898a852652/contracts/plugin/Dailylimit/Dailylimit.sol) by Soul Wallet 84 | - [2FA](https://github.com/SoulWallet/soul-wallet-contract/blob/develop/contracts/plugin/Simple2FA/Simple2FA.sol) by Soul Wallet 85 | - [Cross-chain Safe](https://github.com/cucupac/x-safe/blob/main/README.md) by cucupac 86 | - [Recovery with Delay](https://github.com/unlocktheswap/Safe-AA/blob/main/contracts/contracts/RecoveryWithDelayPlugin.sol) by Akshay Patel 87 | - [Intents](https://github.com/Banana-Wallet/safe-intent-plugin/blob/main/contracts/IntentSafePlugin.sol) by BananaHQ 88 | - [GameSessionKey](https://github.com/itublockchain/eth-paris-session-key/blob/master/account-contracts/contracts/GameSessionValidationModule.sol) by itublockchain 89 | - [PaySplit](https://github.com/ipsavitsky/PaySplit/blob/main/contracts/contracts/Plugins.sol) by ipsavitsky 90 | - [Recurring Execution](https://github.com/Unhosted-Wallet/unhosted-modules/blob/main/recurring-execution/contracts/RecurringExecuteModule.sol) by Unhosted Wallet 91 | 92 | ## Tooling 93 | 94 | - [ModuleKit](https://github.com/rhinestonewtf/modulekit): A development kit for building smart account modules 95 | 96 | ## Communities 97 | 98 | - [Modular Contract Account Standard](https://t.me/+KfB9WuhKDgk5YzIx) 99 | --------------------------------------------------------------------------------