# Overview

## Introduction

AcalaSwap is an automated market maker (AMM) styled decentralized exchange protocol implemented and deployed as upgradable runtime modules (aka pallets) on both the Acala and Karura networks. AcalaSwap will also be available as pre-compiled Smart Contracts on the EVM+ of both networks. AcalaSwap supports both native Substrate tokens and ERC-20 tokens seamlessly.

AcalaSwap contains multiple liquidity pools each of which is made up of two different tokens e.g. Token A-B pool and Token B-C pool. Users can swap any token to any other token in a single transaction provided there is a path between them e.g. even if there's no Token A-C pool, users can still swap Token A for Token C, given they have a common path via Token B.&#x20;

## Participants

* Traders
* Liquidity Providers
* Acala stablecoin protocol
* Network fee schedule

Read more [here](#undefined)

## Networks

AcalaSwap is available on&#x20;

* **Acala Network**: this enables decentralized on-chain exchange for various assets involved in the Acala and Polkadot ecosystem including all Polkadot parachain ecosystems.
* **Karura Network**: this enables decentralized on-chain exchange for various assets involved in the Karura and Kusama ecosystem including all Kusama parachain ecosystems.

## AcalaSwap Web App

AcalaSwap reference web applications&#x20;

* for Acala network is [here](https://apps.acala.network/swap)
* for Karura network is [here](https://apps.karura.network/swap)

Wallet required to use the web applications

* [Polkadot{js} Extension](https://polkadot.js.org/extension/)

Mobile Apps that integrates AcalaSwap

* [Polkawallet](https://polkawallet.io/)


---

# 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-acalaswap.acala.network/overview.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.
