File tree Expand file tree Collapse file tree 3 files changed +65
-2
lines changed
Expand file tree Collapse file tree 3 files changed +65
-2
lines changed Original file line number Diff line number Diff line change 1818 - name : Install dependencies
1919 run : npm install
2020
21+ - name : Run linter
22+ run : npm run lint
23+
2124 # scan:
2225 # needs: lint-and-test
2326 # if: ${{ github.event_name == 'pull_request' && github.event.repository.private == false }}
Original file line number Diff line number Diff line change 1+ # Contributing to Arc Multichain Wallet
2+
3+ Thank you for your interest in contributing to Arc Multichain Wallet! We welcome contributions from the community.
4+
5+ ## Getting Started
6+
7+ 1 . Fork the repository
8+ 2 . Clone your fork locally
9+ 3 . Create a new branch for your changes
10+ 4 . Make your changes
11+ 5 . Submit a pull request
12+
13+ ## Development Setup
14+
15+ ``` bash
16+ # Install dependencies
17+ npm install
18+
19+ # Copy environment variables
20+ cp .env.example .env.local
21+
22+ # Start local Supabase (requires Docker)
23+ npx supabase start
24+ npx supabase db push
25+
26+ # Start the development server
27+ npm run dev
28+ ```
29+
30+ ## Pull Request Process
31+
32+ 1 . Ensure your code follows the existing code style and passes linting (` npm run lint ` ).
33+ 2 . Update documentation if your changes affect the public API or user-facing behavior.
34+ 3 . Write clear, descriptive commit messages using [ Conventional Commits] ( https://www.conventionalcommits.org/ ) .
35+ 4 . Keep pull requests focused — one feature or fix per PR.
36+ 5 . Include a clear description of what your PR does and why.
37+
38+ ## Code of Conduct
39+
40+ Please be respectful and constructive in all interactions. We are committed to providing a welcoming and inclusive experience for everyone.
41+
42+ ## License
43+
44+ By contributing, you agree that your contributions will be licensed under the [ Apache License 2.0] ( LICENSE ) .
Original file line number Diff line number Diff line change @@ -46,8 +46,24 @@ export async function handleDeposit(
4646 return { error : 'Missing amount' } ;
4747 }
4848
49- // TODO: Integrate Circle Paymaster API for gas abstraction
50- // Placeholder for deposit logic with gas paid in USDC
49+ /**
50+ * Circle Paymaster API Integration (Planned)
51+ *
52+ * The Circle Paymaster API enables gas abstraction for ERC-4337 UserOperations,
53+ * allowing users to pay transaction fees in USDC instead of native gas tokens.
54+ *
55+ * Planned integration steps:
56+ * 1. Construct the deposit UserOperation for the target chain.
57+ * 2. Call the Circle Paymaster API (`POST /paymaster/policy/{policyId}/sponsor`)
58+ * to obtain a sponsored `paymasterAndData` payload.
59+ * 3. Sign the sponsored UserOperation with the user's developer-controlled wallet.
60+ * 4. Submit the signed UserOperation to the bundler for on-chain execution.
61+ *
62+ * This will replace the mock deposit logic below with actual on-chain transactions
63+ * where gas fees are transparently covered in USDC via the Circle Paymaster.
64+ *
65+ * @see https://developers.circle.com/paymaster/overview
66+ */
5167 const depositResult = {
5268 txHash : 'mock-tx-hash' ,
5369 gatewayWalletAddress : 'mock-gateway-wallet-address' ,
You can’t perform that action at this time.
0 commit comments