Blockchain explorer for Ethereum based network and a tool for inspecting and analyzing EVM based blockchains.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Luke Imhoff 88652b7d84 Sort inserts consistently to avoid deadlocks 7 years ago
.circleci Merge branch 'master' into optimized-indexer 7 years ago
apps Sort inserts consistently to avoid deadlocks 7 years ago
bin Remove Heroku (#133) 7 years ago
config WIP 7 years ago
.credo.exs Disable credo MaxLineLength 7 years ago
.dialyzer-ignore Use nowarn_function instead of .dialyzer-ignore 7 years ago
.formatter.exs WIP Hash primary keys 7 years ago
.gitignore Migrate to webpack 7 years ago
.pairs Add Desmond to pairs 7 years ago
.tool-versions Migrate from CircleCI 1.0 to 2.0 7 years ago
LICENSE Add GPL3 license 7 years ago
README.md Remove Heroku (#133) 7 years ago
coveralls.json Sort inserts consistently to avoid deadlocks 7 years ago
mix.exs Run dialyzer in test environment 7 years ago
mix.lock Remove ethereumex 7 years ago

README.md

POA Explorer CircleCI Coverage Status

This is a tool for inspecting and analyzing the POA Network blockchain.

Machine Requirements

  • Erlang/OTP 20.2+
  • Elixir 1.6+
  • Postgres 10.0
  • Node.js 9.10+

Required Accounts

  • GitHub for code storage

Setup Instructions

Development

To get POA Explorer up and running locally:

  • Set up some default configuration with: cp apps/explorer/config/dev.secret.exs.example apps/explorer/config/dev.secret.exs
  • Set up some default configuration with: cp apps/explorer_web/config/dev.secret.exs.example apps/explorer_web/config/dev.secret.exs
  • Install dependencies with mix do deps.get, local.rebar, deps.compile, compile
  • Create and migrate your database with mix ecto.create && mix ecto.migrate
  • Install Node.js dependencies with cd apps/explorer_web/assets && npm install; cd -
  • Start Phoenix with mix phx.server

Now you can visit localhost:4000 from your browser.

You can also run IEx (Interactive Elixir): iex -S mix phx.server

CircleCI Updates

Configure your local CCMenu with the following url: https://circleci.com/gh/poanetwork/poa-explorer.cc.xml?circle-token=f8823a3d0090407c11f87028c73015a331dbf604

Documentation

  • mix docs
  • open doc/index.html

Testing

Prerequisites

  • PhantomJS (for wallaby)

Running the tests

  • Build the assets: cd apps/explorer_web/assets && npm run build; cd -
  • Format the Elixir code: mix format
  • Run the test suite with coverage for whole umbrella project: mix coveralls.html --umbrella
  • Lint the Elixir code: mix credo --strict
  • Run the dialyzer: mix dialyzer --halt-exit-status
  • Check the Elixir code for vulnerabilities:
    • cd apps/explorer && mix sobelow --config; cd -
    • cd apps/explorer_web && mix sobelow --config; cd -
  • Lint the JavaScript code: cd apps/explorer_web/assets && npm run eslint; cd -

Internationalization

The app is currently internationalized. It is only localized to U.S. English.

To translate new strings, run cd apps/explorer_web; mix gettext.extract --merge and edit the new strings in apps/explorer_web/priv/gettext/en/LC_MESSAGES/default.po.

Contributing

  1. Fork it ( https://github.com/poanetwork/poa-explorer/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Write tests that cover your work
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request