Skip to content
This repository was archived by the owner on Dec 8, 2025. It is now read-only.

Conversation

@bguiz
Copy link
Contributor

@bguiz bguiz commented Nov 17, 2025

Summary by CodeRabbit

  • Documentation
    • Added Exchange Integrations Cheatsheet for EVM developers, detailing Injective's MultiVM architecture and how Cosmos and EVM transactions work with various token types (INJ, fungible tokens, NFTs). Includes operational guidelines for cross-chain transfers and practical UX recommendations for exchanges implementing deposits and withdrawals.

@coderabbitai
Copy link

coderabbitai bot commented Nov 17, 2025

Walkthrough

Two documentation files were updated to provide guidance on exchange integrations with Injective. The Table of Contents was updated with a new entry, and a comprehensive guidance document was added explaining MultiVM architecture, token types (fungible tokens and NFTs), transaction handling, and operational rules for exchanges.

Changes

Cohort / File(s) Summary
Documentation Structure
\.gitbook/SUMMARY.md``
Added new Table of Contents entry linking to Exchange Integrations Cheatsheet under EVM Developers section
Exchange Integration Guidance
\.gitbook/developers-evm/exchange-integrations-cheat-sheet-evm.md``
New document providing guidance on Injective's MultiVM architecture, fungible token types (MTS, Denom, ERC20), NFT handling (Cosmos NFT vs ERC721), and operational rules for withdrawals, deposits, and transaction listening mechanisms

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

  • Purely documentation-based changes with no code logic to verify
  • Straightforward structural updates and new guidance content
  • Clear formatting and organization consistent with existing documentation
  • Minimal complexity beyond reviewing content accuracy and completeness

Poem

🐰 A cheatsheet hops into view,
MultiVM pathways made clear and true—
Tokens, NFTs, and exchanges align,
With guidance so thoughtful, the integrations shine!
Documentation blooms where confusion once grew! 📚✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'docs: exchange integrations cheat sheet' directly and clearly describes the main change: adding a new Exchange Integrations Cheatsheet document to the documentation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs/exchange-cheat-sheet

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.

Copy link

@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: 3

🧹 Nitpick comments (1)
.gitbook/developers-evm/exchange-integrations-cheat-sheet-evm.md (1)

54-60: Improve parallel structure in Deposits section for readability.

Lines 56 and 59 describe similar conditions but use inconsistent wording. Line 56 says "If user deposits using a Cosmos address" while line 59 says "If user enters an EVM address". For consistency and clarity, line 59 should use parallel language.

Apply this diff:

- If user enters an EVM address (`0x...`):
+ If user deposits using an EVM address (`0x...`):
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between d8e95f8 and e717795.

📒 Files selected for processing (2)
  • .gitbook/SUMMARY.md (1 hunks)
  • .gitbook/developers-evm/exchange-integrations-cheat-sheet-evm.md (1 hunks)

Comment on lines +1 to +10
# Exchange Integrations Cheatsheet

If you are an exchange (either CEX or DEX), itegrating with Injective Mainnet, this page is for you!

## Injective's MultiVM architecture

Injective supports **both** Cosmos and EVM transactions.
There are, therefore two different ways to perform several operations.
As an exchange, most likely you are primarily concerned about how this impacts the following activity:

Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix typo in introduction.

Line 3 has a spelling error.

Apply this diff:

- If you are an exchange (either CEX or DEX), itegrating with Injective Mainnet, this page is for you!
+ If you are an exchange (either CEX or DEX), integrating with Injective Mainnet, this page is for you!
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
# Exchange Integrations Cheatsheet
If you are an exchange (either CEX or DEX), itegrating with Injective Mainnet, this page is for you!
## Injective's MultiVM architecture
Injective supports **both** Cosmos and EVM transactions.
There are, therefore two different ways to perform several operations.
As an exchange, most likely you are primarily concerned about how this impacts the following activity:
# Exchange Integrations Cheatsheet
If you are an exchange (either CEX or DEX), integrating with Injective Mainnet, this page is for you!
## Injective's MultiVM architecture
Injective supports **both** Cosmos and EVM transactions.
There are, therefore two different ways to perform several operations.
As an exchange, most likely you are primarily concerned about how this impacts the following activity:
🤖 Prompt for AI Agents
.gitbook/developers-evm/exchange-integrations-cheat-sheet-evm.md lines 1-10: fix
the spelling mistake in the introduction by replacing "itegrating" with
"integrating" so the sentence reads "If you are an exchange (either CEX or DEX),
integrating with Injective Mainnet, this page is for you!".

Comment on lines +15 to +37
## Cosmos and EVM transactions

When can you use Cosmos transactions?
When can you use EVM transactions?
The answer varies depending on the asset that is being transferred.

When transferring INJ, the cryptocurrency of the Injective network:

- All all cases, you may use **either** Cosmos transactions or EVM transactions, they are equivalent.

When transferring fungible tokens, you must first check what type of fungible token it is:

- If it implements the [MultiVM Token Standard (MTS)](./multivm-token-standard.md),
you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
- This is because MTS tokens are simultaneously both a Denom and an ERC20.
- If it is a Denom (and not MTS), you may only use Cosmos transactions.
- If it is an ERC20 (and not MTS), you may only use EVM transactions.

When transferring non-fungible tokens:

- If it is a Cosmos NFT (`x/nft`), you may only use Cosmos transactions.
- If it is an ERC721, you may only use EVM transactions.

Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix grammar error: duplicate word.

Line 23 repeats "all" — this should read "In all cases" instead of "All all cases".

Apply this diff:

- - All all cases, you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
+ - In all cases, you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## Cosmos and EVM transactions
When can you use Cosmos transactions?
When can you use EVM transactions?
The answer varies depending on the asset that is being transferred.
When transferring INJ, the cryptocurrency of the Injective network:
- All all cases, you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
When transferring fungible tokens, you must first check what type of fungible token it is:
- If it implements the [MultiVM Token Standard (MTS)](./multivm-token-standard.md),
you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
- This is because MTS tokens are simultaneously both a Denom and an ERC20.
- If it is a Denom (and not MTS), you may only use Cosmos transactions.
- If it is an ERC20 (and not MTS), you may only use EVM transactions.
When transferring non-fungible tokens:
- If it is a Cosmos NFT (`x/nft`), you may only use Cosmos transactions.
- If it is an ERC721, you may only use EVM transactions.
## Cosmos and EVM transactions
When can you use Cosmos transactions?
When can you use EVM transactions?
The answer varies depending on the asset that is being transferred.
When transferring INJ, the cryptocurrency of the Injective network:
- In all cases, you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
When transferring fungible tokens, you must first check what type of fungible token it is:
- If it implements the [MultiVM Token Standard (MTS)](./multivm-token-standard.md),
you may use **either** Cosmos transactions or EVM transactions, they are equivalent.
- This is because MTS tokens are simultaneously both a Denom and an ERC20.
- If it is a Denom (and not MTS), you may only use Cosmos transactions.
- If it is an ERC20 (and not MTS), you may only use EVM transactions.
When transferring non-fungible tokens:
- If it is a Cosmos NFT (`x/nft`), you may only use Cosmos transactions.
- If it is an ERC721, you may only use EVM transactions.
🤖 Prompt for AI Agents
.gitbook/developers-evm/exchange-integrations-cheat-sheet-evm.md around lines 15
to 37: fix the duplicated word in the INJ transfer section by replacing the
phrase "All all cases, you may use **either** Cosmos transactions or EVM
transactions, they are equivalent." with the corrected phrasing "In all cases,
you may use **either** Cosmos transactions or EVM transactions, they are
equivalent."

* [The Graph](https://docs.substreams.dev/documentation/how-to-guides/injective)
* [EVM Developers](developers-evm/README.md)
* [EVM Network Information](developers-evm/network-information.md)
* [Exchange Integrations Cheatsheet](developers-evm/exchgange-integrations-cheat-sheet-evm.md)
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix broken documentation link: filename mismatch in path.

The path references exchgange-integrations-cheat-sheet-evm.md (misspelled) but the actual file is named exchange-integrations-cheat-sheet-evm.md. This will result in a broken link in the documentation.

Apply this diff to correct the path:

- * [Exchange Integrations Cheatsheet](developers-evm/exchgange-integrations-cheat-sheet-evm.md)
+ * [Exchange Integrations Cheatsheet](developers-evm/exchange-integrations-cheat-sheet-evm.md)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
* [Exchange Integrations Cheatsheet](developers-evm/exchgange-integrations-cheat-sheet-evm.md)
* [Exchange Integrations Cheatsheet](developers-evm/exchange-integrations-cheat-sheet-evm.md)
🤖 Prompt for AI Agents
In .gitbook/SUMMARY.md around line 138 the link path contains a typo
"exchgange-integrations-cheat-sheet-evm.md" which doesn't match the actual file
name; update that entry to the correct filename
"exchange-integrations-cheat-sheet-evm.md" so the link points to the existing
document (ensure only the filename is changed and spacing/markdown list
formatting is preserved).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants