Skip to content

Latest commit

 

History

History
77 lines (52 loc) · 5.47 KB

README.md

File metadata and controls

77 lines (52 loc) · 5.47 KB

Brave Ethereum Remote Client Extension

Brave's Ethereum Remote Client is a Chromium extension for interacting with the Ethereum blockchain. It supports transfering ether, working with assets (ERC20 & ERC223, ERC721, ERC1155), and running Dapps. This extension is only meant to be used within Brave.

This extension is based off of MetaMask. Brave plans to keep up to date with this upstream source.

Building locally

  • Install Node.js version 10
    • If you are using nvm (recommended) running nvm use will automatically choose the right node version for you.
  • Install Yarn
  • Install dependencies: yarn
  • Build the project to the ./dist/ folder with yarn dist.
  • Optionally, to start a development build (e.g. with logging and file watching) run yarn start instead.
    • To start the React DevTools and Redux DevTools Extension alongside the app, use yarn start:dev.
      • React DevTools will open in a separate window; no browser extension is required
      • Redux DevTools will need to be installed as a browser extension. Open the Redux Remote Devtools to access Redux state logs. This can be done by either right clicking within the web browser to bring up the context menu, expanding the Redux DevTools panel and clicking Open Remote DevTools OR clicking the Redux DevTools extension icon and clicking Open Remote DevTools.
        • You will also need to check the "Use custom (local) server" checkbox in the Remote DevTools Settings, using the default server configuration (host localhost, port 8000, secure connection checkbox unchecked)

Uncompressed builds can be found in /dist, compressed builds can be found in /builds once they're built.

Contributing

You can read our internal docs from MetaMask here.

You can re-generate the docs locally by running yarn doc, and contributors can update the hosted docs by running yarn publish-docs.

Running Tests

Run tests with yarn test.

You can also test with a continuously watching process, via yarn watch.

You can run the linter by itself with yarn lint.

Architecture

Architecture Diagram

Development

yarn install
yarn dev:brave

Build for for production

yarn install
yarn run dist:brave

Publish to npm

npm install
npm run publish:brave

Writing Browser Tests

To write tests that will be run in the browser using QUnit, add your test files to test/integration/lib.

Other Docs