Skip to content

Latest commit

 

History

History
192 lines (122 loc) · 3.79 KB

README.md

File metadata and controls

192 lines (122 loc) · 3.79 KB

skycoin explorer logo

Skycoin Explorer

Build Status

https://explorer.skycoin.net

Skycoin Explorer is a tool to interact with Skycoin ecosystem.

You can check blocks, transactions and their states.

https://explorer.skycoin.net

Table of Contents

Installation

Requirements

go>=1.10
node>=v6.9.0
npm>=3.10.10

Go

The server is written in golang.

The golang server returns the static content from dist/ and proxies a subset of the skycoin node API.

Angular

As an Angular CLI projects, Node 6.9.0 or higher, together with NPM 3 are required.

After cloning the project, you will need to run npm install to pull in all javascript dependencies.

The angular code is compiled to the dist/ folder.

Docker images

If you want to run Explorer on Docker refer to Docker instructions

API documentation

HTML documentation:

http://explorer.skycoin.net/api.html

JSON formatted API docs:

http://explorer.skycoin.net/api/docs

Usage

Run a skycoin node

git clone github.com/skycoin/skycoin
cd skycoin
./run.sh

Build the explorer frontend

make build-ng

Note: if you do not want to install NPM or build the frontend, you can use a docker image to run the explorer.

Run the explorer

make run

This must be run from the same directory that contains dist/.

The explorer assumes that the skycoin node is running on localhost:6420 by default.

To point it at a different address:

SKYCOIN_ADDR=http://127.0.0.1:3333 ./explorer

explorer can be run in api-only mode, which will expose the JSON API but not serve the static content from dist/:

make run-api

Development

After changing the angular frontend, it should be compiled and committed to the repo. This is to simplify deployment of the application, and allow users to run it themselves without installing node and npm then running npm install and npm run build.

Compiling the angular frontend

make build-ng

Formatting

explorer.go should be formatted with goimports. You can do this with:

make format

You must have goimports installed (use make install-linters).

Code Linting

Install prerequisites:

make install-linters

Run linters:

make lint

e2e Tests

If you are running a Skycoin node normally, you can run the e2e tests with:

npm run e2e

If you are running a Skycoin node using the test database (blockchain-180.db), you can run the e2e tests with:

npm run e2e-blockchain-180

The second method is the one used in Travis.

Customization

CUSTOMIZATION.md

Deployment

Compile explorer.go to a binary:

make build-go

Allow it to bind to port 80 using setcap:

sudo setcap 'cap_net_bind_service=+ep' ./explorer

Run it on port 80:

EXPLORER_HOST=:80 ./explorer