CryptoBlades / cryptoblades

535 stars 258 forks source link

CryptoBlades

Warning

This code is open, but not open source. It is not licensed, which means you cannot use it freely for your own applications. You cannot "base your code on CryptoBlades", nor use our code for anything. At all. This is not permissible under our license terms (which do not exist).

Currency Setup

  1. Install Ganache.
  2. For Ganache, choose Quickstart Ethereum.
  3. Increase the gas limit in the workspace to 99999999 (or some other high number so you can deploy).
  4. Install MetaMask.
  5. Create a new connection to connect to Ganache with these settings: http://localhost:7545, any name, any chain id
  6. In Ganache, click the key icon on the right side of any address and grab the private key. Make sure that chainID is 5777.
  7. In MetaMask, create a new account, import from private key, and paste the key in there.

You should now have 100 fake eth! You're now fake rich.

Frontend Setup

  1. npm install
  2. mv .env.local .env (copy the example env to your local so it can be used)
  3. npm run contract:prepare (this builds your contracts)
  4. npm run contract:deploy (this deploys your contracts to your local blockchain)
  5. npm run start:frontend

For Windows developers experiencing errors follow these steps:

  1. rm -r build
  2. npm run contract:prepare (this builds your contracts)
  3. rm -r build/contracts
  4. npm run contract:deploy
  5. npm run start:frontend

VSCode Setup

If you're using VSCode, we recommend these extensions: Auto Rename Tag, EditorConfig for VSCode, Eslint, Github Pull Requests, Gitlens, Javascript and Typescript, Live Share, Solidity, Typescript Hero, Vetur

Environment Variables

There are optional environment variables, most of which have sensible defaults if copied from .env.local:

Structure

Commands

Errors

Running tests locally

To run tests locally simply run

npm run test:local

NOTE: Careful, this is not using migrations but rather fixtures which should be kept up to date (/test/helpers/prepareContracts.js)

Config

Alternative development flow with Hardhat

This repository uses Truffle, but if for some reason, you'd prefer using hardhat for development, with an ephemeral local blockchain, you can do so too:

Turn on the Hardhat node: npx hardhat node

Generate Hardhat artifacts: npx hardhat compile

Deploy to the Hardhat node: export ETH_DEV_RPC_PORT=8545 && npm run deploy --reset

Run the frontend pointing to hardhat: export VUE_APP_NETWORK_ID=31337 && npm run start:frontend

If you get any issues during deployment, run: truffle compile --all

i18n (Internationalization) - Adding strings for translation

Replacing strings in the code

Adding a new language

i18n Manager App

Alt