User interface for Tornado Cash Classic.
Go to file
Tornado Contrib 640677973b
Rename DepositsService to TornadoService
2024-05-01 10:15:14 +00:00
.github Improve fetching events and use subgraphs to fetch events by default 2024-04-19 06:01:31 +00:00
abis Improve fetching events and use subgraphs to fetch events by default 2024-04-19 06:01:31 +00:00
app TC-98 | Add ProposalComments component with tab filters 2022-08-05 17:50:33 +10:00
assets Cleaner networkConfig 2024-04-26 21:29:29 +00:00
components Migrate to @tornado/core pt1 2024-05-01 08:19:33 +00:00
constants Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
langs Improve fetching events and use subgraphs to fetch events by default 2024-04-19 06:01:31 +00:00
layouts Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
lib depreciate e712 w/ provider signing 2022-11-04 22:03:56 +00:00
middleware Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
modules Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00
pages Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
plugins Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
scripts Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
services Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00
static Migrate to @tornado/core pt1 2024-05-01 08:19:33 +00:00
store Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00
utils Replace networkConfig with @tornado/core 2024-04-30 09:48:53 +00:00
.env.example Improve fetching events and use subgraphs to fetch events by default 2024-04-19 06:01:31 +00:00
.eslintrc.js Initial work with @tornado/core 2024-04-29 21:28:46 +00:00
.gitignore Update tornado-oracles dependency to fix BSC gas price underestimate problem 2023-08-30 08:33:06 -07:00
.npmrc Change Tornado dependencies source to Tornado Git registry 2023-06-04 09:05:53 -07:00
.nvmrc Update tornado-oracles package to fix gas price issues for sidechains & specify explicit node version in .nvmrc 2023-08-28 04:19:45 -07:00
.prettierrc init 2022-04-22 13:14:19 +10:00
Dockerfile init 2022-04-22 13:14:19 +10:00
LICENSE init 2022-04-22 13:14:19 +10:00
README.md Cleanup explorerUrl config 2024-04-27 19:48:18 +00:00
app.html return app.html 2022-06-13 20:49:07 +10:00
jest.config.js init 2022-04-22 13:14:19 +10:00
netlify.toml init 2022-04-22 13:14:19 +10:00
nuxt.config.js Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00
package.json Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00
yarn.lock Rename DepositsService to TornadoService 2024-05-01 10:15:14 +00:00

Tornado Cash Classic UI

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

Building locally

  • Install Node.js version 16
    • 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 relayer registration events use yarn update:registered
  • 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:

Command usage follows below.

# Set custom RPC url to sync events
set RPC_URL=http://localhost:8545
# Set USE_GRAPH to false to disable subgraph sync
set USE_GRAPH=false
# 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

Example to update for all networks

yarn update:all