• This repository has been archived on 24/May/2022
  • Stars
    star
    122
  • Rank 286,267 (Top 6 %)
  • Language
    JavaScript
  • License
    BSD 3-Clause "New...
  • Created over 6 years ago
  • Updated over 2 years ago

Reviews

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

Repository Details

Decentralized and light Ethereum Wallet

โš ๏ธ This application is not actively maintained any more.

Fether was originally developed on top of Parity Ethereum which transitions to Open Ethereum, more info here. As a result, Parity Technologies will not maintain actively Fether anymore.

Parity Fether

Parity Fether - a decentralised, light client-based wallet

ยป Download the latest release ยซ


About Parity Fether

Parity Fether aims to be the lightest and simplest decentralized wallet. It supports Ether and ERC-20 tokens, and runs on top of Parity Ethereum light client. This allows smooth synchronization and interaction with the Ethereum blockchain, in a decentralized manner.

By default, Fether will launch its embedded Parity Ethereum light client. You can also separately launch your Ethereum client and Fether will automatically connect to it, as described in the Fether FAQ.

Parity Fether interacts with the light node using @parity/light.js, a Javascript library specifically crafted for wallets to connect with light clients.

Parity Fether is licensed under the BSD 3-Clause, and can be used for all your Ethereum needs.

If you run into problems while using Parity Fether, first check out the FAQ on our wiki and feel free to file an issue in this repository or hop on our Gitter or Riot chat rooms if you have any question. We are glad to help!

For security-critical issues, please refer to the security policy outlined in SECURITY.md.


Screenshots

Parity Fether

Join the chat!

Get in touch with us on Gitter: Gitter

Official website: https://parity.io | Be sure to check out our Wiki for more information.

Install and start Parity Fether using binaries

Mac

  • Download the .dmg file.
  • Double click on it to install Fether.

Windows

  • Download the .exe file.
  • Double click on it to install Fether.
  • Fether will be added to the program menu.

Linux

Using the AppImage (any distro)

  • Download the .AppImage file.
  • Make it executable chmod +x /path/to/fether-x.x.x-x86_64.AppImage.
  • Launch it /path/to/fether-x.x.x-x86_64.AppImage.

Using the binary (any distro)

  • Download the .tar.xz file.
  • Unarchive it tar xf fether-x.x.x.tar.xz.
  • Launch it ./fether-x.x.x/fether.

Debian installer (Ubuntu, Linux Mint..)

  • Download the .deb file.
  • Double click on the file to install Fether.
  • Fether will be added to the program menu.

Security warning

  • Don't run Fether as root

  • Beware of suspicious symlinks called fether-x.y.z-x86_64.AppImage.home

This attack vector applies to any AppImage application. It consists of crafting a .home file/folder to be used as the home folder by an AppImage application. The danger resides in the fact that this .home file could be a symlink somewhere on the user's computer. The AppImage would be using this new location as a home folder, in a non-transparent way. Running the application as root might damage a system, for example, by overflowing the /boot partition.

Build from sources

Install dependencies

Mac

Install Xcode Command Line Tools, NVM, Node.js latest LTS, Yarn, and Git

xcode-select --install;
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash;
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
echo -e "Installing Node.js latest LTS version";
nvm install --lts
echo -e "Switching to use Node.js latest LTS version";
nvm use --lts;
brew install yarn --without-node;
brew install git --verbose;
brew upgrade git --verbose;

Linux and Windows (Git Bash)

Install Node.js 10.x, Yarn, Git, and increase amount of inotify watchers

sudo apt update;
sudo apt install -y git nodejs npm curl;
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -;
apt-get install -y nodejs;
sudo ln -s /usr/bin/nodejs /usr/bin/node;
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -;
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list;
sudo apt-get update && sudo apt-get install yarn;
sudo ln -s /usr/bin/yarn /usr/local/bin/yarn;
yarn global add windows-build-tools;

Clone this repo

git clone https://github.com/paritytech/fether
cd ./fether
yarn install

Build and run

Build this repo and run

yarn electron

Build binaries

yarn package

Run with live reload for development

yarn start

Build binaries for production

General Notes:

  1. Alternative to yarn; yarn build; DEBUG=electron-builder yarn release --mac; is to just run yarn package and then run the open "./packages/fether-electron/dist/mac/Parity Fether.app" (i.e. no need to install)

  2. Publishing a new release to GitHub is performed by a maintainer of the repository. In this case you need to obtain the GH_TOKEN from GitHub settings and add it using export GH_TOKEN="..." to ~/.bashrc and then run source ~/.bashrc. If you get an error that the GH_TOKEN is missing and you are only building the binary but not publishing, then just ignore the error.

Mac

Build and run binaries (i.e. .dmg) for production on Mac of a specific remote branch

git fetch origin INSERT_BRANCH_NAME:INSERT_BRANCH_NAME;
git checkout INSERT_BRANCH_NAME;
rm -rf ./packages/fether-electron/dist/
rm -rf /Applications/Parity\ Fether.app/
yarn; yarn build; DEBUG=electron-builder yarn release --mac;
open ./packages/fether-electron/dist/Parity\ Fether-0.3.0.dmg

Linux

Build and run binaries (i.e. .deb) for production on Linux

Note: If you want to save time building, then first edit electron-builder.json so that it only builds a single binary like .deb instead of all of them

sudo rm -rf /opt/Parity\ Fether;
rm -rf ~/.config/Electron;
rm -rf ~/.config/fether;
rm -rf ./packages/fether-electron/dist/;
sudo rm /usr/local/bin/fether;
sudo apt remove -y fether;
yarn; yarn build; DEBUG=electron-builder yarn release --linux
sudo apt install -y ./packages/fether-electron/dist/fether_0.3.0_amd64.deb
fether

Windows

Build and run binaries (i.e. .exe) binary for production on Windows

rm -rf /packages/fether-electron/dist;
yarn; yarn build; DEBUG=electron-builder yarn release --win;
./packages/fether-electron/dist/Parity\ Fether-0.3.0.exe

More Repositories

1

parity-ethereum

The fast, light, and robust client for Ethereum-like networks.
Rust
6,804
star
2

openethereum

(deprecated) The fast, light, and robust client for the Ethereum mainnet.
Rust
1,641
star
3

pwasm-tutorial

A step-by-step tutorial on how to write contracts in Wasm for Kovan
Rust
227
star
4

js-libs

A collection of JavaScript libraries for Ethereum dapp development.
TypeScript
169
star
5

wordlist

Parity Brain Wallets Word List Library
JavaScript
82
star
6

parity-deploy

Parity deployment script.
Shell
81
star
7

sol-rs

Solaris - Solidity testing framework in Rust.
Rust
54
star
8

pwasm-std

WASM contracts standard library for Rust
Rust
54
star
9

pwasm-token-example

A simple ERC-20 compatible token contract written in Rust compiled into WebAssembly
Rust
48
star
10

pwasm-ethereum

Rust
32
star
11

kovan-validator-set

Validator set contracts for Kovan network.
JavaScript
32
star
12

pwasm-abi

Parity WASM Abi (Legacy and new)
Rust
29
star
13

whisper

Rust
16
star
14

parity-poa-tutorial

A complete set of files produced in the Parity PoA chain tutorial.
15
star
15

pwasm-repo-contract

Sample repo contract written in Rust and compiled to WebAssembly
Rust
14
star
16

3.1-db-upgrade-tool

OpenEthereum 2.5.13, 2.7.2, 3.0.1 to 3.1 DB upgrade tool
Rust
13
star
17

wasm-tests

Rust
11
star
18

name-registry

Registry used by Parity Name Registry and Certifier used by service transaction contract
JavaScript
9
star
19

devp2p

Extracted devp2p library from OpenEthereum repository
Rust
8
star
20

block-reward

Block reward contract interface
Solidity
7
star
21

private-tx

Private Transactions contracts for parity
JavaScript
7
star
22

openethereum.github.io

CSS
6
star
23

pwasm-test

pwasm-test is a set of tools to make it easy to test internal logic of contracts written using pwasm-std
Rust
6
star
24

lookup

Parity lookup API ; lookup an Ethereum address from an e-mail or a name
JavaScript
4
star
25

ethkey-js

Parity-compatible recovery phrase / private key utilities
JavaScript
4
star
26

homebrew-openethereum

Homebrew tap for OpenEthereum
Ruby
4
star
27

signature-registry

Solidity function signature registry
JavaScript
3
star
28

poa-cluster-ansible

Ansible scripts for setting up clusters of parity nodes
Python
3
star
29

auto-updater

Operations contracts for parity's auto-updater
JavaScript
2
star
30

pm

Project Management & Coordination Repository
2
star
31

token-registry

Token Registry and BasicCoin ERC20 contract used by Parity UI.
JavaScript
2
star
32

oe-devtools

Openethereum dev tools
Rust
2
star
33

dapp-registry

Dapp registry
JavaScript
2
star
34

sst_dump_aggregator

Calls sst_dump tools from rocksdb on folder and aggregates output
Rust
2
star
35

ethereum-rpc-json

JSON file of all ethereum's rpc methods supported by parity
JavaScript
2
star
36

github-hint

Content hash to github repo mapping contract
JavaScript
1
star
37

oe4

Rust
1
star
38

openethereum-landing

JavaScript
1
star
39

kovan-failover

Kovan poof of authority failover code.
JavaScript
1
star
40

template

Template to be used when creating new contract projects
Solidity
1
star