Inspiration
The Lisk network, a powerful Optimism superchain, holds immense potential for fostering innovative dApps. However, the existing gas fee structure can create an entry barrier for both users and developers. Space Lisk was born from the desire to unlock the full potential of Lisk by streamlining transactions and enabling a more user-friendly experience.
What it does
Space Lisk bundler is currently running at http://31.220.31.152:14337/rpc/testapikey
Space Lisk is a comprehensive suite of tools designed to revolutionize account abstraction on the Lisk chain. Our core functionalities include:
Space Lisk ERC-4337 Bundler: This innovative bundler facilitates efficient transaction processing by grouping multiple UserOperations into single transactions, significantly reducing gas costs and network congestion.
Space Lisk SDK for Smart Account Management (spacelisk-js): Our developer-friendly SDK empowers users to effortlessly interact with smart accounts, unlocking a world of possibilities within the Lisk network.
Space Lisk ERC-4337 Paymaster Contract: Space Lisk's paymaster offer a paradigm shift in gas management. Users can contribute to the paymaster pool, enabling gasless transactions for themselves or others.
How we built it
Space Lisk at the core, lies a solid foundation built with Solidity. I crafted the functionalities of the ERC-4337 paymaster contracts using Solidity, ensuring they operate efficiently and securely within the Lisk network.
You topup your balance with the paymaster using the dApp. then you can use the paymaster contract in any user operation on the lisk L2 chain.
The paymaster holds the balance of each address, when a user tries to run a userOperation with the paymaster, it first makes sure you have enough balance to run the operation. then after the useroperaion the postOp method is called. the user balance is debited in the postOp method.
Space lisk bundler is a fork of etherspot skandha bundler an open source project. i made some changes like adding rate limiting. the bundler is also capable of running regular node RPC calls, thanks to skandha redirectRpc functionality.
The client library (spacelisk-js) was built using typescript. it runs spacelisk bundler rpc by default internally. all you need to provide is your spacelisk API key and privatekey (signer) of the smart account.
You can send userOperations and also batch multiple userOperations. I wrote a documentation using git book to explain how to use the js sdk, paymaster and bundler.
The smart account is based on infinitism "simple account". which is secured and tested thoroughly.
Challenges we ran into
I ran into a lot of bugs working with skandha bundler. i had to edit all the build files to make it work. took me days just editing the build files and fixing bugs.
Accomplishments that we're proud of
Although i faced a lot of Challenges setting this project up solely. i'm proud i get to complete it.
What we learned
I learnt a lot about erc4337 and account abstraction at its core. i also learnt a lot about mempools and onchain transactions in general.
What's next for Space lisk
Update on the dApp.
Create an explore page so users using Space Lisk bundler can explore user operations.
Funding paymaster with erc20 tokens.
Develop plugins for space lisk smart accounts
I got an idea of revenue sharing. while working with bundlers i learnt that excess gas is kept by the bundler. i am exploring ways to share this revenue to space lisk users.
Built With
- hardhat
- nextjs
- skandha
- solidity
- typescript
- viem
Log in or sign up for Devpost to join the conversation.