Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Example Idea: Capsule + Biconomy #12

Open
jlm0 opened this issue Jan 27, 2025 · 5 comments
Open

Example Idea: Capsule + Biconomy #12

jlm0 opened this issue Jan 27, 2025 · 5 comments
Assignees

Comments

@jlm0
Copy link
Contributor

jlm0 commented Jan 27, 2025

Migration from getpara/examples-hub#18 to Awesome Capsule

Original Description: Build a simple example app that uses Biconomy for account abstraction and Capsule. Leverage the Biconomy example guide to do this.

Use Case: For example, allow users to login with their social accounts via Capsule and enable gas sponsorships or bundled transactions through Biconomy.

Requirements

Create a simple demo application with a minimal UI that connects to the Capsule Modal instance. The application should:

  1. Integrate Biconomy SDKs with Capsule's Ethers.JS package
  2. Work with a Biconomy AA account for gas-sponsored transactions
  3. Implement either a basic smart contract or perform a basic operation like send from the smart account
  4. Use Capsule as the EOA for the account

Success Criteria

The project should:

  • Have a well-structured wallet project folder
  • Provide minimal UX that guides users through:
    • Using the Capsule modal
    • Creating their AA account
    • Interacting with the AA

Technical Requirements

  • Required: Must use @usecapsule/react-sdk
  • Optional: Free to use additional libraries of choice
@jlm0
Copy link
Contributor Author

jlm0 commented Jan 27, 2025

Hi @fraolb, I am migrating the original issue from examples-hub to awesome-capsule to better showcase community contributions. Could you please reopen your PR for Biconomy against the awesome-capsule repo as an independent application (e.g., using a fresh app with something like vite-react)?

@fraolb
Copy link

fraolb commented Feb 1, 2025

Hello @jlm0 I will create independent react app and reopen PR. Could you assign it to me.

@jlm0 jlm0 assigned jlm0 and fraolb and unassigned jlm0 Feb 7, 2025
@jlm0
Copy link
Contributor Author

jlm0 commented Feb 7, 2025

@fraolb Can you update on the status of this Bounty? Thank you.

@fraolb
Copy link

fraolb commented Feb 10, 2025

Hello @jlm0 I was working on the Para Biconomy page. One issue held me back, which is ParaEthersSigner which is from @getpara/ethers-v6-integration. walletId is optional prop but it is required while creating it.
const ethersSigner = new ParaEthersSigner(para, provider)
it throws and error message of

Error: no valid wallet id found

I will try to solve it by this week. The code is here .

@jlm0
Copy link
Contributor Author

jlm0 commented Feb 13, 2025

Hello @jlm0 I was working on the Para Biconomy page. One issue held me back, which is ParaEthersSigner which is from @getpara/ethers-v6-integration. walletId is optional prop but it is required while creating it. const ethersSigner = new ParaEthersSigner(para, provider) it throws and error message of

Error: no valid wallet id found

I will try to solve it by this week. The code is here .

@fraolb Thanks for bringing it up. Can you ensure you have an EVM wallet by calling getWalletsByType(WalletType.EVM) before ParaEthersSigner is created?

You can technically pass in a wallet id if need be but shouldn't be required. The definition of the ParaEthersSigner is below so the wallet id is optional. So if you're not passing it that means it cant find an EVM wallet.

   * @param para - the ParaCore instance
   * @param provider - the ethers provider to use. If not present, will use the default ethers.Provider.
   * @param walletId - optional wallet ID to use. If not present, will use the first wallet found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants