Skip to content

Conversation

@gomesalexandre
Copy link
Contributor

@gomesalexandre gomesalexandre commented Oct 27, 2025

Description

Docs to reference to for ops and marketing alike re: current state of WC things

Issue (if applicable)

closes N/A

Risk

High Risk PRs Require 2 approvals

What protocols, transaction types, wallets or contract interactions might be affected by this PR?

None, docs only

Testing

  • Docs are informative

Engineering

Operations

  • 🏁 My feature is behind a flag and doesn't require operations testing (yet)

Screenshots (if applicable)

Summary by CodeRabbit

  • Documentation
    • Added comprehensive WalletConnect integration documentation detailing wallet connection workflows for desktop and mobile platforms.
    • Included multiple connection methods such as paste connection link, desktop deep link, and mobile deep link approaches.
    • Provided platform support matrix, step-by-step instructions, and visual guides to help users connect wallets to DApps.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 27, 2025

📝 Walkthrough

Walkthrough

Three new WalletConnect documentation files are added to guide users on connecting ShapeShift wallets across different platforms and scenarios: an overview with platform matrix, wallet connection methods (QR codes and deep links), and DApp integration workflows (paste link, desktop, and mobile deep links).

Changes

Cohort / File(s) Summary
WalletConnect Documentation
docs/features/walletconnect.md, docs/features/walletconnect-wallet.md, docs/features/walletconnect-dapps.md
New documentation pages detailing WalletConnect support: overview with platform matrix, wallet connection workflows (QR codes, deep links), and DApp integration methods (paste link, desktop/mobile deep links) with embedded images and step-by-step instructions.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

  • These are purely documentation additions with no code logic, functional changes, or public API alterations.
  • Review scope is straightforward: verify content accuracy, consistency of formatting, and completeness of workflow descriptions.

Suggested reviewers

  • NeOMakinG
  • premiumjibles

Poem

🐰✨ WalletConnect Whiskers

Three docs now guide the weary soul,
Through QR codes and links so whole,
WalletConnect's tale is told with care,
DApps and wallets dance in the air! 🔗🎉

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The PR title "feat: walletconnect feature docs" directly and accurately describes the main change in the changeset. The pull request adds three new documentation files related to WalletConnect support (overview, wallet integration, and dApp connection), and the title clearly conveys this is a feature addition of documentation. The title is concise, specific, and uses standard commit conventions. It avoids vague terminology and would be immediately clear to a teammate reviewing the git history.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat_wc_docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

gomesalexandre and others added 14 commits October 27, 2025 17:35
Add simplified documentation for WalletConnect features:

- WalletConnect Wallet: Connect external wallets to ShapeShift
  - Current: QR code connection
  - Coming: Direct connection (mobile web) - PR #10912
  - Future: iOS wallet detection - #10893

- WalletConnect to dApps: Connect ShapeShift wallet to DApps
  - Paste connection links
  - Deep link support (app.shapeshift.com/wc)
  - Works across desktop, mobile web, and mobile app

Docs focused on what we support and how it works, with minimal
fluff and clear platform support matrices.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
The WalletConnect modal already shows wallet buttons on mobile web
that deep link to wallet apps - this is already live. The "Direct
Connection" feature is about skipping the WalletConnect modal entirely
by showing wallet buttons directly in ShapeShift's UI.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Use "Connect dApp" button (not Settings menu)
- Note: only works with native wallet currently
- Remove fluff "What You Can Do" section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Mobile app supports both paste link and deep link methods,
not just deep link only.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Fix terminology: "Deep Link via WalletConnect Modal" for mobile web
- Clarify mobile app supports both paste link and deep link
- Add PR #10879 as initial direct connection implementation
- Note iOS wallet detection is a spike in progress
- Add demo video link for direct connection feature

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Updated the WalletConnect DApps documentation to clarify deep linking methods for both desktop and mobile applications, including notes on the status of the apps.
Updated WalletConnect documentation for clarity and added links for further details.
Updated the WalletConnect documentation to improve clarity and structure.
@gomesalexandre gomesalexandre changed the title wip: wc docs feat: walletconnect feature docs Oct 27, 2025
@gomesalexandre gomesalexandre marked this pull request as ready for review October 27, 2025 17:22
@gomesalexandre gomesalexandre requested a review from a team as a code owner October 27, 2025 17:22
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (3)
docs/features/walletconnect.md (1)

5-5: Add missing period after "etc."

Line 5 uses "etc)" without a period; standard American English style requires "etc." with a period.

Apply this diff to fix the grammar:

-WalletConnect allows ShapeShift to securely connect with external wallets (typically mobile ones e.g MM Mobile, Zerion, Trust etc), and dApps to connect to ShapeShift as a wallet.
+WalletConnect allows ShapeShift to securely connect with external wallets (typically mobile ones e.g MM Mobile, Zerion, Trust etc.), and dApps to connect to ShapeShift as a wallet.
docs/features/walletconnect-dapps.md (1)

1-48: Well-documented DApp connection workflows.

The three connection methods are clearly explained with step-by-step instructions and supporting visual assets. The status notes on lines 19 and 35 appropriately flag current limitations and expected timelines.

One minor consideration: the time-sensitive notes (WC format fix expected "in a few days" as of 10/27/2025, iOS app expected "~1 day") will need future updates as those dates pass. Consider whether to include update reminders or track this documentation as a follow-up task.

docs/features/walletconnect-wallet.md (1)

39-39: Format bare URL as markdown link.

Line 39 contains a bare URL without markdown formatting. Per MD034, bare URLs should be wrapped in angle brackets or converted to markdown links.

Apply this diff to format the URL:

-https://github.com/user-attachments/assets/c72816f5-3683-4c91-b964-c516b84f199e
+[Direct connection video](https://github.com/user-attachments/assets/c72816f5-3683-4c91-b964-c516b84f199e)
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between a4f3e48 and cc3f424.

📒 Files selected for processing (3)
  • docs/features/walletconnect-dapps.md (1 hunks)
  • docs/features/walletconnect-wallet.md (1 hunks)
  • docs/features/walletconnect.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**/*

📄 CodeRabbit inference engine (.cursor/rules/naming-conventions.mdc)

**/*: ALWAYS use appropriate file extensions
Flag files without kebab-case

Files:

  • docs/features/walletconnect-wallet.md
  • docs/features/walletconnect-dapps.md
  • docs/features/walletconnect.md
🧠 Learnings (3)
📓 Common learnings
Learnt from: gomesalexandre
PR: shapeshift/web#10879
File: src/context/WalletProvider/WalletConnectV2/useDirectConnect.ts:15-23
Timestamp: 2025-10-22T22:12:31.955Z
Learning: In shapeshift/web WalletConnect V2 direct connection (src/context/WalletProvider/WalletConnectV2/useDirectConnect.ts), gomesalexandre prefers using native URL schemes only (metamask://, trust://, zerion://) and not universal links/app links for deep-linking.
Learnt from: gomesalexandre
PR: shapeshift/web#10206
File: src/config.ts:127-128
Timestamp: 2025-08-07T11:20:44.614Z
Learning: gomesalexandre prefers required environment variables without default values in the config file (src/config.ts). They want explicit configuration and fail-fast behavior when environment variables are missing, rather than having fallback defaults.
Learnt from: gomesalexandre
PR: shapeshift/web#10458
File: src/plugins/walletConnectToDapps/types.ts:7-7
Timestamp: 2025-09-10T15:34:29.604Z
Learning: gomesalexandre is comfortable relying on transitive dependencies (like abitype through ethers/viem) rather than explicitly declaring them in package.json, preferring to avoid package.json bloat when the transitive dependency approach works reliably in practice.
Learnt from: gomesalexandre
PR: shapeshift/web#10461
File: src/plugins/walletConnectToDapps/components/modals/ContractInteractionBreakdown.tsx:0-0
Timestamp: 2025-09-13T16:45:18.813Z
Learning: gomesalexandre prefers aggressively deleting unused/obsolete code files ("ramboing") rather than fixing technical issues in code that won't be used, demonstrating his preference for keeping codebases clean and PR scope focused.
Learnt from: gomesalexandre
PR: shapeshift/web#10503
File: .env:56-56
Timestamp: 2025-09-16T13:17:02.938Z
Learning: gomesalexandre prefers to enable feature flags globally in the base .env file when the intent is to activate features everywhere, even when there are known issues like crashes, demonstrating his preference for intentional global feature rollouts over cautious per-environment enablement.
📚 Learning: 2025-10-22T22:12:31.955Z
Learnt from: gomesalexandre
PR: shapeshift/web#10879
File: src/context/WalletProvider/WalletConnectV2/useDirectConnect.ts:15-23
Timestamp: 2025-10-22T22:12:31.955Z
Learning: In shapeshift/web WalletConnect V2 direct connection (src/context/WalletProvider/WalletConnectV2/useDirectConnect.ts), gomesalexandre prefers using native URL schemes only (metamask://, trust://, zerion://) and not universal links/app links for deep-linking.

Applied to files:

  • docs/features/walletconnect-wallet.md
  • docs/features/walletconnect-dapps.md
  • docs/features/walletconnect.md
📚 Learning: 2025-10-22T22:11:22.918Z
Learnt from: gomesalexandre
PR: shapeshift/web#10879
File: src/context/WalletProvider/WalletConnectV2/components/WalletConnectDirectRow.tsx:64-81
Timestamp: 2025-10-22T22:11:22.918Z
Learning: In early WalletConnect POC/features behind a flag, gomesalexandre prioritizes connection correctness/stability over UX polish; minimal safety guards (like preventing concurrent connects) are preferred, while visuals will be wired later by reallybeard.

Applied to files:

  • docs/features/walletconnect-wallet.md
🪛 LanguageTool
docs/features/walletconnect-dapps.md

[grammar] ~21-~21: Ensure spelling is correct
Context: ...Apps can connect directly to ShapeShift webapp: 1. Visit DApp 2. Connect Wallet → WalletCon...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[style] ~43-~43: Using many exclamation marks might seem excessive (in this case: 3 exclamation marks for a text that’s 1365 characters long)
Context: ...p, notice ShapeShift wallet is connected! Note, some dApps use the old WalletCon...

(EN_EXCESSIVE_EXCLAMATION)

docs/features/walletconnect.md

[style] ~5-~5: In American English, abbreviations like “etc.” require a period.
Context: ...obile ones e.g MM Mobile, Zerion, Trust etc), and dApps to connect to ShapeShift as...

(ETC_PERIOD)

🪛 markdownlint-cli2 (0.18.1)
docs/features/walletconnect-wallet.md

39-39: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (2)
docs/features/walletconnect.md (1)

1-24: Clear and well-structured overview page.

The documentation effectively introduces the two WalletConnect modes and provides a helpful platform support matrix for quick reference. The cross-links to detailed documentation are appropriately placed.

docs/features/walletconnect-wallet.md (1)

1-38: Well-documented wallet connection workflows with clear status tracking.

The current methods are clearly explained with step-by-step instructions. The "Coming Soon" section appropriately signals the direct connection feature with PR references for tracking, and the emphasis on native wallet buttons (MetaMask, Trust, Zerion) aligns with the implementation approach.

Copy link
Collaborator

@premiumjibles premiumjibles left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks sane 🤌

@premiumjibles premiumjibles merged commit aca3382 into develop Oct 27, 2025
4 checks passed
@premiumjibles premiumjibles deleted the feat_wc_docs branch October 27, 2025 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants