dbeal-eth / kwenta

Home Page:https://kwenta.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kwenta CI kwenta Discord Twitter Follow

Kwenta

A dApp enabling derivatives trading with infinite liquidity — powered by the Synthetix protocol.

The trading UI is available on IPFS kwenta.eth.link and kwenta.io.
ENS link: kwenta.eth.

Tech stack

  • Next.js
  • React
  • React Query
  • Recoil
  • Unstated-next
  • Styled-Components
  • Immer

Ethereum stack

  • ethers.js v5 - Ethereum wallet implementation.
  • Blocknative Onboard - for ethereum wallet connectivity.
  • Blocknative Notify - for tx notifications.
  • synthetix-data - for historical data (powered by TheGraph).
  • @synthetixio/js - for interactions with the Synthetix protocol.

Development

Install dependencies

npm i

Set up environment variables

Copy the .env.local.example file in this directory to .env.local (which will be ignored by Git):

cp .env.local.example .env.local

Then, open .env.local and add the missing environment variables:

  • NEXT_PUBLIC_PORTIS_APP_ID - Portis app id (get it from portis.io)
  • NEXT_PUBLIC_BN_NOTIFY_API_KEY - Blocknative Notify API key (get it from blocknative.com)
  • NEXT_PUBLIC_BN_ONBOARD_API_KEY - Blocknative Onboard API key (get it from blocknative.com)
  • NEXT_PUBLIC_INFURA_PROJECT_ID - Infura project id (get it from infura.io)

Run

npm run dev

Open http://localhost:3000 to view it in the browser.

Build

npm run build
npm start

About

https://kwenta.io

License:MIT License


Languages

Language:TypeScript 95.4%Language:JavaScript 4.3%Language:CSS 0.2%Language:Shell 0.0%