Skip to content
Fully featured Graphical User Interface / Reference Wallet for the LocalCoin Blockchain
Branch: live
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates May 4, 2018
app DFIX: die page on manually change node May 24, 2019
bloom_filter bloom_localcoin.dat Oct 25, 2018
build/dist deploy May 22, 2019
charting_library Reverting to the state of the project at 3c0a3e1 Jan 23, 2019
conf localcoin-ui Nov 8, 2018
docs + Nov 8, 2018
keys Docker setup Aug 20, 2018
resources 1.0.3 release May 15, 2019
ssl #999 Add https server for local development Apr 1, 2018
.babelrc #1502 first pass May 10, 2018
.env.dist start.sh listen DEPLOY_ENV Aug 20, 2018
.eslintignore Update bloom filter program and add npm script for running it, includ… Jan 13, 2017
.eslintrc Return eslint to spaces instead of tabs since most files use that alr… Feb 1, 2017
.gitignore merge Feb 7, 2019
.prettierignore Close #905: Replace react-stockcharts with TradingView charts (#1548) May 24, 2018
.prettierrc Add prettier pre-commit hook Feb 28, 2018
.travis.yml Electron source update Dec 3, 2018
CHANGELOG.md Bit Nov 15, 2018
CONTRIBUTING.md https://discord.gg/vzxSzYN Dec 26, 2018
Dockerfile localcoin-ui Nov 8, 2018
LICENSE.md Add LICENSE Dec 20, 2015
README.md Release notes May 3, 2019
appveyor.yml Update travis and appveyor to use npm ci May 12, 2018
bower.json Merge upstream master Feb 27, 2018
build.sh Write sha256 sums to file on package and deploy Mar 7, 2018
crowdin.yml Merge upstream master Feb 27, 2018
deploy.sh + Nov 8, 2018
docker-compose.yml localcoin-ui Nov 8, 2018
index.php merge Feb 7, 2019
nginx.local.conf Merge upstream master Feb 27, 2018
package-lock.json 1.0.3 release May 15, 2019
package.json 1.0.3 release May 15, 2019
postcss.config.js #1502: Webpack v4 upgrade (#1551) May 24, 2018
release-notes.txt 1.0.3 release May 15, 2019
server.js 6, 8 point Dec 5, 2018
translate-howto.md Merge branch 'patch-2' of git://github.com/rngl4b/graphene-ui into rn… Oct 28, 2015
version.json Update version.json May 16, 2019
webpack.config.js + Dec 7, 2018
write_digest.js Write sha256 sums to file on package and deploy Mar 7, 2018

README.md

Deployment rules

  1. Compile "npm run build"
  2. Push your build to dev branch
  3. Check test server http://localcoin.n3.by, if it's ok merge to live branch, push

Build will be autodeployed to the server. Working by ssh, keep in mind proper chown&chmod.

LocalCoin-UI

This is a light wallet that connects to a LocalCoin API provided by the witness_node executable.

It stores all keys locally in the browser, never exposing your keys to anyone as it signs transactions locally before transmitting them to the API server which then broadcasts them to the blockchain network. The wallet is encrypted with a password of your choosing and encrypted in a browser database.

Getting started

LocalCoin-UI depends node Node.js, and version 9+ is required.

On Ubuntu and OSX, the easiest way to install Node is to use the Node Version Manager.

To install NVM for Linux/OSX, simply copy paste the following in a terminal:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.2/install.sh | bash
nvm install v9
nvm use v9

Once you have Node installed, you can clone the repo:

git clone https://github.com/localcoinis/localcoin-ui.git
cd localcoin-ui

Before launching the GUI you will need to install the npm packages:

npm install

Running the dev server

The dev server uses Express in combination with Webpack.

Once all the packages have been installed you can start the development server by running:

npm start

Once the compilation is done the GUI will be available in your browser at: localhost:9000 or 127.0.0.1:9000. Hot Reloading is enabled so the browser will live update as you edit the source files.

TODO: Testnet

By default localcoin-ui connects to the live LocalCoin network, but it's very easy to switch it to the testnet. To do so, open the UI in a browser, go to Settings, then under Access, select the Public Testnet Server in the dropdown menu. You should also change the faucet if you need to create an account, the testnet faucet address is https://testnet.localcoin.is.

The UI will reload and connect to the testnet, where you can use the faucet to create an account and receive an initial sum of test LLC.

Production

If you'd like to host your own wallet somewhere, you should create a production build and host it using NGINX or Apache. In order to create a prod bundle, simply run the following command:

npm run build

This will create a bundle in the /dist folder that can be hosted with the web server of your choice.

Installable wallets

We use Electron to provide installable wallets, available for Windows, OSX and Linux Debian platforms such as Ubuntu. First, make sure your local python version is 2.7.x, as a dependency requires this.

On Linux you will need to install the following packages to handle icon generation:

sudo apt-get install --no-install-recommends -y icnsutils graphicsmagick xz-utils

For building, each architecture has it's own script that you can use to build your native binary:

Linux npm run package-deb
Windows npm run package-win
Mac npm run package-mac

This will compile the UI with some special modifications for use with Electron, generate installable binaries with Electron and copy the result to the root build/binaries folder.

Docker

Clone this repository, run docker-compose up and visit localhost:8080

Contributing

Please work off the staging branch (dev) and make pull requests to that branch. The master branch will only be updated for new releases.

If you would like to get involved, we have a Telegram chatroom where you can ask questions and get help. You may also join LocalCoin on Discord

Development process

  • Milestones are numbered YYMMDD and refer to the anticipated release date.
  • Bugs are always worked before enhancements
  • Developers should work each issue according to a numbered branch corresponding to the issue git checkout -b 123
  • If an issue is already claimed (assigned), do not attempt to claim it. Issues claimed by outside developers will indicate an assignment to wmbutler, but will mention the developer's github account in this the comments.
  • To claim an issue, simply leave a comment with your request to claim.
  • Do not claim an issue if you will be unable to complete it by the date indicated on the Milestone name

Coding style guideline

Our style guideline is based on 'Airbnb JavaScript Style Guide' (https://github.com/airbnb/javascript), with few exceptions:

  • Strings are double quoted
  • Additional trailing comma (in arrays and objects declaration) is optional
  • 4 spaces tabs
  • Spaces inside curly braces are optional

We strongly encourage to use eslint to make sure the code adhere to our style guidelines.

You can’t perform that action at this time.