Skip to content

anydotcrypto/blacktie

Repository files navigation

BlackTie Browser Extension

WARNING: This is a PoC project, and is not production ready. It ships with no warranty at all, and users are responsible for any funds lost whilst using BlackTie.

BlackTie is a fork of the Metamask - the wallet browser extension.

The fork uses any.sender to send transactions instead of sending the directly to the chain. This means that the user reliquinshes control over setting the gas price, and instead directs any.sender to bump gas prices to find the best available within a reasonable time period.

Some videos:

Installation:

To install Blacktie as a chrome extension do the following:

  1. Download the a zip from here
  2. Unzip it to a local directory
  3. Go to chrome://extensions
  4. Toggle the Developer Mode in the top right hand corner
  5. Click Load Unpacked in the top left
  6. Select the unzipped folder
  7. Disable metamask - both Metamask and Blacktie should not be used at the same time as they both put an ethereum object on the page, which will confuse dapps.

Usage and topping up

To use the any.sender functionality you'll need to do the following:

  1. Create a new account with "Create any.sender account"
  2. Go to Settings > Contacts > My Wallet accounts and select the newly created account
  3. Copy the "Ethereum Signing Authority" address
  4. Using a normal Metamask, or other wallet, you need to fund this signing key with any.sender, you can do this by going to this topup page
  5. After 35 blocks check the balance again on the topup page.
  6. Now you're ready to go! Each time you send a transaction from your any.sender account the gas used will be deducted from that balance. Like in a car, remember to topup before you run too low!

Upgrading

  1. Ensure you have your seed phrase backed up
  2. Open the chrome extensions, and "Disable" Blacktie with the toggle. Dont remove it, just disable.
  3. Delete the blacktie zip, and the unzipped blacktie files from your file system
  4. Download a new blacktie from https://www.anydot.dev/blacktie/blacktie-chrome-7.7.0.zip
  5. Unzip to the same location as before
  6. Re-enable blacktie in the chrome extensions

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

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
yarn start

Build for Publishing

yarn dist

Other Docs

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Languages