classic-ui-dev/README.md

2.3 KiB

Tornado Cash Classic UI

Self-hostable Tornado Cash UI software for interacting with the protocol

Building locally

  • Install Node.js version 14
    • If you are using nvm (recommended) running nvm use will automatically choose the right node version for you.
  • Install Yarn
  • Install dependencies: yarn
  • Copy the .env.example file to .env
    • Replace environment variables with your own personal.
  • Build the project to the ./dist/ folder with yarn generate.

Development builds

To start a development build (e.g. with logging and file watching) run yarn dev.

Deploy on IPFS

  • Make sure you set PINATA_API_KEY and PINATA_SECRET_API_KEY environment variables in .env
  • To deploy a production build run yarn deploy-ipfs.

Architecture

For detailed explanation on how things work, checkout Nuxt.js docs.

Audit

TornadoCash_Classic_dApp_audit_Decurity.pdf

Update cached files

  • To update deposit and withdrawal events use yarn update:events {chainId} {optional: tokenOrEvent} {optional: tokenOrEvent}
  • To update encrypted notes use yarn update:encrypted {chainId}
  • To update merkle tree use yarn update:tree {chainId}

NOTE!

After updating cached files do not forget to use yarn update:zip.

Example for Ethereum Mainnet:

You may set in networkConfig.js the blockSyncInterval (def: 10_000) to the maximum value allowed by your RPC provider. Command usage follows below.

# Updating events with just the required chain id parameter
yarn update:events 1
# Updating events for only one token across all instances on that network
yarn update:events 1 dai
# Updating events for only one event on only some network
yarn update:events 1 deposit
# Both
yarn update:events 1 dai deposit
# Updating encrypted notes for some chain id
yarn update:encrypted 1
# Updating trees for some chain id
yarn update:tree 1
# Finally zips must be updated
yarn update:zip

Example for Binance Smart Chain:

yarn update:events 56
yarn update:events 56 bnb
yarn update:events 56 bnb deposit
yarn update:encrypted 56
yarn update:tree 56
yarn update:zip