• This repository has been archived on 26/Feb/2020
  • Stars
    star
    118
  • Rank 299,923 (Top 6 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created almost 7 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

[โš  Looking for a new maintainer] Parity UI - The Parity Dapp shell, browser & launcher (Electron app)

Parity UI

โš  Parity Technologies is looking for a new maintainer for this repo. If you are interested, please get in touch at [email protected].

โš  Parity UI is currently only compatible with Parity Ethereum <v2.0. Read about possible alternatives here.

Download the latest release

GPLv3

Join the chat!

Get in touch with us on Gitter: Gitter: Parity

Or join our community on Matrix: Riot: +Parity

Be sure to check out our wiki for more information.


About Parity UI

Parity UI is a User Interface desktop application for Parity Ethereum Client >=v1.10. It features a Wallet supporting Ether and ERC-20 Tokens, a Contract development environment, and so much more. Parity UI will download and run Parity Ethereum Client in the background if it is not found on the system. By default Parity UI will try connect to a Parity Ethereum node using Websocket port 8546. You can use alternative ports, see CLI Options below.

You can download Parity UI here or follow the instructions below to build from source.

Parity UI alternatives

View and send Ether and tokens

As Parity UI is not working properly with Parity Ethereum >2.0, you can use MyCrypto Desktop app connected to a local full node to interact with your accounts. Follow these steps to connect MyCrypto Desktop to a local Parity Ethereum node. Parity UI accounts' JSON keystore files can be found at the following location:

  • Mac OS X: ~/Library/Application\ Support/io.parity.ethereum/keys/ethereum/
  • Linux: $HOME/.local/share/io.parity.ethereum/keys
  • Windows 7/10: %HOMEPATH%/AppData/Roaming/Parity/Ethereum/keys

Import an account to MyCrypto by selecting the corresponding JSON keystore file. You will require your account's password to unlock it (originally setup with Parity UI).

Smart contract development

You can use Remix connected to a local Parity Ethereum full node as an alternative to Parity UI for smart contracts development and deployment. Make sure that Remix is allowed to connect to your node by setting up the right JSON-RPC cors policy.

Install from the snap store

In any of the supported Linux distros:

sudo snap install parity-ui

Or, if you want to contribute testing the upcoming release:

sudo snap install parity-ui --beta

And to test the latest code landed into the master branch:

sudo snap install parity-ui --edge

Build from source

npm install
npm run electron

You should see the Electron app popping up.

Build the binary (Optional)

One further, albeit optional step is to create an OS-specific binary. This is done with the following command:

npm run release

This command may take some time. Once finished, you will see binaries for your OS in the dist/ folder.

Developing

The best Developer Experience is achieved by running:

parity --ui-no-validation # Warning: INSECURE. Only use it when developing the UI.
npm start

A new browser tab will open on http://localhost:3000 with the UI, and this tab will refresh on any code change. This DX allows fast iterations.

If you want to test the rendering in an Electron window, run the following command in parallel with the previous command:

npm run electron:dev

This will spawn an Electron window serving http://localhost:3000. Same thing, the Electron window will refresh on any code change.

CLI Options

All other flags passed to Parity UI will be passed down to parity when trying to launch it.

Operating Options:
    --no-run-parity
        Parity UI will not attempt to run 
        the locally installed parity.

    --ui-dev
        Parity UI will load http://localhost:3000. 
        WARNING: Only use this is you plan on developing on Parity UI.

    --ws-interface=[IP]
        Specify the hostname portion of the WebSockets server 
        Parity UI will connect to. IP should be an 
        interface's IP address. (default: 127.0.0.1)

    --ws-port=[PORT]
        Specify the port portion of the WebSockets 
        server Parity UI will connect to. (default: 8546)