What is BLS Wallet?
A set of components to bring lower gas costs to EVM rollups via aggregated BLS signatures. Our smart contract wallet supports recovery, atomic multi-action operations, sponsored transactions and user-controlled upgradability.
You can watch a full end-to-end demo of the project here.
Getting Started
- See an overview of BLS Wallet & how the components work together.
- Use BLS Wallet in a browser/NodeJS/Deno app.
- Use BLS Wallet in your L2 dApp for cheaper, multi action transactions.
- Use BLS Wallet components and features with an ethers.js provider and signer
Setup your development environment
Components
Solidity smart contracts for wallets, BLS signature verification, and deployment/testing tools.
Service which accepts BLS signed transactions and bundles them into one for submission.
npm package for proxying to another aggregator instance.
npm package which provides easy to use constructs to interact with the contracts and aggregator.
Prototype browser extension used to manage BLS Wallets and sign transactions.
Contract Deployments
See the networks directory for a list of all contract deployment (network) manifests. Have an L2/rollup testnet you'd like BLS Wallet deployed on? Open an issue or Deploy it yourself
Ways to Contribute
- Work on an open issue
- Use BLS Wallet in your project and share it with us
- Report a bug or request a feature
- Ask a question or answer an existing one
- Try or add to our documentation
See our contribution instructions & guidelines for more details.