Summary of "Re{solve} Hackathon Workshop: Seamless onboarding of bitcoiners to Starknet"
Summary of "Re{solve} Hackathon Workshop: Seamless onboarding of bitcoiners to Starknet"
Key Technological Concepts and Product Features
- Atomic SDK:
- A software development kit enabling seamless, trustless swaps between Bitcoin (BTC) and Starknet tokens.
- Supports on-chain swaps between Bitcoin Layer 1 (main chain) and Starknet, as well as Bitcoin Layer 2 via the Lightning Network.
- Facilitates bidirectional swaps: BTC ⇄ Starknet tokens.
- Works peer-to-peer without a centralized backend; requires storage adapters for persistence outside browser environments.
- Supports modular chain integration (e.g., Starknet, Solana).
- Provides utilities such as address parsers to identify Bitcoin, Lightning, Starknet, or Solana addresses.
- Swapping Mechanism:
- Uses market makers/liquidity providers to obtain binding quotes for swaps via RFQ (Request for Quote).
- Supports partially signed Bitcoin transactions (PSBT) for wallet interoperability (e.g., Unisat, Xverse).
- Atomic swaps are designed to be trustless, with refund mechanisms if counterparties refuse to proceed.
- On-chain swaps allow users to send BTC and receive Starknet tokens without needing to stay online during Bitcoin confirmations (unlike some other solutions like Garden).
- Storage and Wallet Management:
- For browser environments, IndexedDB is used by default for swap data persistence.
- For backend/Node.js environments, SQLite storage adapter is used, with the option to implement custom storage adapters (e.g., Google Cloud Storage, Cosmos DB, MongoDB).
- Wallet keys are saved locally in key files to maintain persistent wallets across application restarts.
- Supports OpenZeppelin accounts for Starknet wallet management.
- Lightning Network Support:
- Lightning swaps require Hash Time Locked Contracts (HTLCs) and involve more complex secret management.
- Lightning swaps currently require mainnet usage due to lack of testnet wallet support.
- UX challenges exist, such as needing a funded Starknet account to receive Lightning payments; improvements are underway.
- Lightning swaps use external Lightning wallets and invoices for payments.
- Comparison with Garden:
- Atomic swaps do not require users to stay online during Bitcoin confirmations, improving UX.
- Garden uses HTLC atomic swaps which require live client presence, which can be a poor experience given Bitcoin's confirmation times.
- Atomic SDK allows for automatic handling and settlement without constant user interaction.
- Integration and Workflow Suggestions:
- Atomic SDK can be integrated with invisible wallets like ChPay, allowing users to log in with Google accounts while maintaining crypto sovereignty.
- The SDK can be used to abstract away Starknet complexity from Bitcoin users, enabling seamless onboarding without users needing to know about Starknet.
- Possible to combine Atomic with other wallets (e.g., Unisat, Xverse) for signing Bitcoin transactions.
- Custom storage adapters can enable cloud-based swap persistence for multi-device user scenarios.
Tutorial / Workshop Highlights
- Step-by-step live coding session creating a TypeScript project for atomic swaps.
- Installation of necessary packages: Atomic SDK, Starknet libraries, Bitcoin signer, SQLite adapter for backend storage.
- Setup of wallets for Starknet and Bitcoin with persistent key storage.
- Using faucets to fund testnet wallets for demonstration.
- Creating and initializing the swapper instance to perform swaps.
- Demonstrating getting quotes, sending Bitcoin transactions, and awaiting confirmations.
- Executing swaps from Bitcoin to Starknet tokens and vice versa.
- Showcasing Lightning Network swaps with external wallets and invoices.
- Handling swap lifecycle events like confirmations, updates, and refunds.
- Explanation of the underlying mechanisms like PSBT, HTLC, and escrow.
- Q&A addressing integration questions, storage options, and differences with competing solutions.
Key Sources / Speakers
- Adam:
- Co-founder and technical lead of Atomic.
- Main presenter conducting the live coding workshop and answering technical questions.
- Workshop Host / Moderator:
- Facilitates the session, manages questions, and provides additional context about hackathon resources and related technologies like Garden.
Overall, the workshop provided a comprehensive technical guide on using the Atomic SDK to enable trustless, seamless swaps between Bitcoin and Starknet tokens, including both on-chain and Lightning Network solutions, with practical coding examples and integration advice.
Category
Technology
Share this summary
Is the summary off?
If you think the summary is inaccurate, you can reprocess it with the latest model.
Preparing reprocess...