2022-10-13 16:50:29 +03:00
# Tornado Cash Classic UI
> UI for non-custodial Ethereum Privacy solution
## Building locally
- Install [Node.js ](https://nodejs.org ) version 14
- If you are using [nvm ](https://github.com/creationix/nvm#installation ) (recommended) running `nvm use` will automatically choose the right node version for you.
- Install [Yarn ](https://yarnpkg.com/en/docs/install )
- 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 ](https://nuxtjs.org ).
## Audit
[TornadoCash_Classic_dApp_audit_Decurity.pdf ](https://tornado.cash/audits/TornadoCash_Classic_dApp_audit_Decurity.pdf )
## Update cached files
- For update deposits and withdrawals events use `yarn update:events {chainId}`
- For update encrypted notes use `yarn update:encrypted {chainId}`
- For update merkle tree use `yarn update:tree {chainId}`
#### NOTE!
After update cached files do not forget to use `yarn update:zip`
### Example for Ethereum Mainnet:
```
yarn update:events 1
yarn update:encrypted 1
yarn update:tree 1
yarn update:zip
```
### Example for Binance Smart Chain:
```
yarn update:events 56
yarn update:encrypted 56
yarn update:zip
```