This package is a Crosschain DEX that is supporting natively 8 different blockchains:
- Ethereum
- Polygon
- Binance Smart Chain
- Optimism
- Fantom
- Celo
- Avalanche
- Arbitrum
You can use the on-line version clicking here:
https://dex.aisland.io
With > 4000 tokens listed.
Under the hood, it uses the great 0x protocol
and the list of tradable tokens is filtered out from https://tokenlists.org/ (an Uniswap Project).
You can easily make your own DEX with a minimal effort, just changing the logo and colors in a few html/css files inside the html folder.
Operating System:
- Debian/Ubuntu Linux Operating System
(it work in any Linux OS with small changes to the installation steps)
Packages to be installed:
- Nodejs v.20.x.
- Mariadb Server.
- Nginx used as reverse proxy for https connections.
- Git
- Curl
Hardware Requirements:
4 GB RAM, 10 GB disk for the OS and couple of CPU.
A virtual machine from any cloud provider will work perfectly.
Install Mariadb, Git, Curl and Nginx:
apt-get -y install mariadb-server git nginx curl
The version in the package of the OS is quite old so following the instructions from the official website: https://nodejs.org to install the version >= 20.x.
From command line, clone this repository in the folder /usr/src/:
cd /usr/src/
git clone https://github.com/aisland-dao/dex/
Install the required packages using npm:
npm install
Create a database with:
mysql
create database dex;
create the database tables with:
mysql dex <dump.sql
- customise all the files .sh
- configure the Nginx reverse proxy to reach port tcp/3000
Execute:
/usr/src/dex-server.sh
to let it work in background, use systemctl
There is an utility to load/update the tokens list reading the data from https://tokenlists.org/. You should configure the database parameters editing the text file:
dex-load-coingecko-tokens.sh
and launch it from the standard folder:
/usr/src/dex/dex-load-main-tokens-coingecko.sh
You should run automatically the app one time a week from crontab. You can add the automatic job with:
crontab -e
and add the following line:
15 0 * * 0 /usr/src/dex/dex-load-main-tokens-coingecko.sh