# Chain Abstraction

Chain abstraction is one of the flagship use cases of Connext. Chain abstraction allows a dApp to execute logic from any chain without requiring users to switch networks, sign transactions on a different chain, and spend gas on a different chain. This pattern can be used at higher layers to fully abstract chains from the user, removing the need for users to consciously have to think about what chain they are on.

For example, a chain abstraction layer for Aave would involve a simple, two-step process.

<figure><img src="/files/BkZYgNV8HK74xdtyr0wz" alt=""><figcaption></figcaption></figure>

1. The Connext SDK is used to construct an `xcall` transaction to be sent by the user on their origin chain.
2. An adapter contract deployed on the destination chain forwards the `deposit` call to Aave.

In the end, no changes are needed on the Aave contracts themselves and cross-chain deposits are enabled for users with maximally simplified UX.

To get started, check out the [Chain Abstraction guide](/usecases/chain-abstraction/chain-abstraction-guide.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.connext.network/usecases/chain-abstraction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
