Coder Social home page Coder Social logo

ethereumclassic / explorer Goto Github PK

View Code? Open in Web Editor NEW
263.0 35.0 250.0 10.15 MB

EthereumClassic Block Explorer

License: MIT License

JavaScript 51.63% HTML 16.26% CSS 18.61% CoffeeScript 13.41% Shell 0.07% Dockerfile 0.01%
ethereum ethereum-classic explorer

explorer's People

Contributors

arksnorman avatar bakon11 avatar cody-burns avatar dependabot[bot] avatar dexaran avatar drignazgortngschirl avatar elaineo avatar empty2k12 avatar hackmod avatar highlandernetwork avatar kimisan avatar matthewjamesr avatar melnikaite avatar mess110 avatar oldcryptogeek avatar phyro avatar pyskell avatar realcodywburns avatar rguiu avatar varunram avatar yazzyyaz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

explorer's Issues

Contract Internal Transactions

I'd like to have the Contracts page display internal transactions, but this requires modifying a node so that the EVM processes transaction data to record resulting value transfers.

I'm fine with modifying an EVM for use with the explorer, and having it be open source. I just wonder if a custom EVM defeats the purpose of an open-source explorer.

Pinging @whatisgravity, who is overseeing client developments.

config.json ignored, latest first creates huge gaps

I have declared specific blocks inside my config.json which were promptly ignored by grabber.js. I didn't immediately see the cause of this inside the source, copied the config.json to the parent directory and tried again with the same results.

By counting latest first, I have massive gaps all over my database. Since I can't declare which blocks to download, the gaps are persistent unless I start a new database (command lacking?), disconnect from the internet or prevent blockchain sync some other way, and then finish the extraction all in one attempt.

Token Browser

Sort of like this one, but generic.
http://etherhub.io/dao#tab_dao_1

  • Generic Token interface with balance
  • View transactions
  • View transfer events
  • DB for known tokens and ABIs, Decimal, symbol, name, address
  • Take decimals into account
  • Enter token address to load token page (on page listing)
  • If no DB entry, call contract for Decimal, symbol, name, address
  • Page listing known tokens

Detect if Address is a Token

Detect Addresses that are ERC-20 compatible for token explorer

see also: https://etherscan.io/token-search

(From cody: If your running parity, you could export the state and grep it for erc20 like pattern accoints. It exports as a json. Make sure you gave it set for fatdb in your config.)

  • Detect by ERC fxns present in bytecode

Miner Distribution chart doesn't load unless I hit "reload".

Steps,

  1. home page->ok
  2. select tab of Miner Distribution chart -> is ok, Miner Distribution chart is showed
  3. select tab of Hashrate Growth chart -> is ok, Hashrate Growth chart is showed
  4. 『Reselect』 tab of Miner Distribution chart -> not ok, it still show the Hashrate Growth chart
  5. Hit reload -> ok, Hashrate Growth chart is showed

ETC transfer incomplete after 24 hours

I have sent ETC over 24 hours ago to the correct address and it is still unavailable. I also noticed that none seemed to be transferred by the the person who mines, but correct me if i am wrong.

Replace License

I've heard some criticisms re: the existing license. I don't know much about licensing agreements, but if someone has a better one to drop in, please do.

launching web interface?

Hi everyone,

Trying to get an instance of this up and running but having some issues.

grabber is working fine, but I dont seem to be able to start the web interface?

Web3 connection established
Killed

What am I doing wrong? How should this be launched properly?

Been looking at the code, nice work, expect a deluge of pull requests from me.

Get a domain name

It's only at blocks.elaineou.com right now because it's fast for me to create a subdomain. This is obviously not a permanent home ;)

So, I'm happy to have some other domain name point to the server if anyone wants to pick a name.

Ethereum Classic Transaction ID Problem

Hello,

im from Germany and im quite new in mining ethereum classic coins. I have earned 2 Coins the last 4 Days. The first coin i send to anycoin for a test-payout. Everything fine and it worked quite well.

The second coin i earned, i transferred to poloniex. Now i got a support Ticket from Poloniex which says "It appears you have forgotten to provide the transaction id of your deposit".

The Problem is that the 2 transactions are not displayed in my wallet. When i go to "See Transaction History" it opens are new window but there are no transactions displayed.

"No transactions found", but in the overview there is written "2 Transactions". What can i do now or perhaps u can help me. This would be very nice.

Port?

What is the default port that the explorer runs on, and where am i able to change it?
Thanks.

CircleCI Setup

We should enable CI on our codebase. I am not sure how we have deployment to production setup currently but we should not leave pushing merged-PRs to production to a single point of failure.

I bring this up so we can operate more efficiently and push code changes quicker for endusers.

https://circleci.com/

cors error in chrome

Cannot display some pages because:
Failed to load http://127.0.0.1:3000/stats: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.

etherhub.io not working

Hi, the website is up, but the content e.g. blocks, txs, charts, accounts, stats, etc. are not working.

Summary of Immediate needs

I went through the code and it's pretty bare, just looking up address/blocks/tx with web3 calls. So there's a lot of work to do. I'm starting this as a task list so we can organize what we're working on.

Server

  • Miner stats
    • ID'ing miner from input data
  • Contracts: View internal txs

Client

Inaccessible web3 git pinned by package.json

"web3": "git://github.com/elaineo/web3.js#develop"

This ensures that any bugs caused during development in the underlying library will be inherited by your software and break, for some users, until that under development branch is fixed.

Additionally, npm install didn't have enough permissions by default for new users to actually get the code. I did a git clone and as a workaround:
"web3": "file:local_modules/web3"

Never pin the development/master version of another git.

Executing explorer app

What is the process to execute running the explorer asside from importing the blocks into mongoDB ?

Deploy Commit b985155

Deploy commit to production server

Move closing tag

Moved after Classic Block Explorer. Both the image and the text should be linked, not just the image.


Please add a Deploy label so we can easily let you know to deploy a change.

'The bomb' chart

I think we should make a 'minutes till midnight ' chart that shows the estimated difficulty based off the simple moving average of network hashrate. The difficulty algo is a constant, the hashrate is the biggest x factor.

Contract Verification imperfect

TODO:

  • Identify contract against creation transaction
    • record creation transactions and associated contract addresses in DB (input data too)
  • really big crap like DAO contract causes a memory error on the server but not my local machine, must be a bug somewhere

Statebot integration

statebot.info the easiest way to access it is to contract on etc to get the json link and use ipfs.io/ipfs/%theFileHash%

the web view

hello,when i run node ./tools/grabber.js
how i view it in the chrome explorer?

Web wallet user interface

How labor intensive would it be to make a backend user tablespace that could store private keys and a list of public addresses they watch? We can bring over most of the front end from the classic wallet as far as visuals go. I keep hearing the "Oh the is no web wallet" argument a ton lately. Lack of security on it is a little spooky though.

Response Times & Load Issues

@elaineo I am starting to notice some performance issues with the explorer. Once in a while I am getting connection refused, slow load times, etc. Not sure if it the network I am using, you updating the codebase at the time I access, etc.

What infrastructure are we using? Is our Mongo instance on the same host or different?

Edit 1: I have also noticed that block/tx data is seemingly not loading.

Architecture proposal

Hi,

I'm following and working on ETC blockchain. And I think that we could improve a lot this explorer.

My proposal starts changing MongoDB for LevelDB (Thanks @elaineo for the advise)

We've some options to implement LevelDB.

The first, keeping JS as backend language we should use https://github.com/Level/levelup.

The second option B4F (Backend for frontend) - Backend with LevelDB (has changes in the architecture.):

  • B4F with Nextjs to get server side render and the better features from React.
  • Backend with RPC to expose all data and connect with the B4F.

What do you think? I would like to hear your opinion and starting to work ASAFP.

Explorer keeps displaying "old" blocks/transactions

Hi, I have the issue in which the explorer keeps pointing to old blocks.
What I've done:

  • Pointing tools/grabber.js and routes/web3relay.js to private chain
  • Run node/grabber.js then node app.js

The app can start, but after I reset the private chain, it keeps listing the old blocks, when selected the block -> 404 error.

I tried to removed mongo db folder but the issue remained.
Where can I completely erase the blockchain database of the explorer ?

Thank you & cheers,
Anh-Dung

Convert unix timestamp to human readable

On the Contract Address view time must be displayed in human readable format: 22 Aug 2016, 12:30. For now it is displayed in seconds since the Unix epoch. Optionally, todays transactions can be displayed like "44 minutes ago".

Change ETH Balance Format

Replace current wei representation with ETC (55.xxx versus 55858875380000001024) and limit 6 decimal places.

Move wei balance underneath ETC representation in small font.

Current explorer vuln list

Legit posting the output instead of editing, sorry for the length but I thought you'd prefer "all of the data" instead of some. Without a working proof of concept this is just speculation, but it appears a DoS could be engineered against any service using this libraries. I'll check to see what versions Ethereum Classic is running in node.js in other services, but as a client instead of server I don't think you'd expose the host - but I'm just guessing at this point.
`(+) 7 vulnerabilities found

│ │ Regular Expression Denial of Service
│ Name │ fresh
│ CVSS │ 7.5 (High)
│ Installed │ 0.2.4
│ Vulnerable │ < 0.5.2
│ Patched │ >= 0.5.2
│ Path │ [email protected] > [email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/526

│ │ Denial of Service
│ Name │ ws
│ CVSS │ 7.5 (High)
│ Installed │ 1.1.4
│ Vulnerable │ <3.3.1
│ Patched │ >= 3.3.1
│ Path │ [email protected] > [email protected] > [email protected]
│ > [email protected]
│ More Info │ https://nodesecurity.io/advisories/550

│ │ Denial of Service
│ Name │ ws
│ CVSS │ 7.5 (High)
│ Installed │ 1.1.2
│ Vulnerable │ <3.3.1
│ Patched │ >= 3.3.1
│ Path │ [email protected] > [email protected] > │
[email protected] > [email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/550

│ │ Regular Expression Denial of Service
│ Name │ parsejson
│ CVSS │ 7.5 (High)
│ Installed │ 0.0.3
│ Vulnerable │ <=0.0.3
│ Patched │ None
│ Path │ [email protected] > [email protected] > │
[email protected] > [email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/528

│ │ Regular Expression Denial of Service
│ Name │ ms
│ CVSS │ 5.3 (Medium)
│ Installed │ 0.6.2
│ Vulnerable │ <=0.7.0
│ Patched │ >0.7.0
│ Path │ [email protected] > [email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/46

│ │ Regular Expression Denial of Service
│ Name │ debug
│ CVSS │ 3.7 (Low)
│ Installed │ 2.3.3
│ Vulnerable │ <= 2.6.8 || >= 3.0.0 <= 3.0.1
│ Patched │ >= 2.6.9 < 3.0.0 || >= 3.1.0
│ Path │ [email protected] > [email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/534

│ │ Regular Expression Denial of Service
│ Name │ debug
│ CVSS │ 3.7 (Low)
│ Installed │ 2.2.0
│ Vulnerable │ <= 2.6.8 || >= 3.0.0 <= 3.0.1
│ Patched │ >= 2.6.9 < 3.0.0 || >= 3.1.0
│ Path │ [email protected] > [email protected] > │
[email protected] > [email protected]
│ More Info │ https://nodesecurity.io/advisories/534
`

Grabber.js

When fetching block info and setting config listen to true it continues to constantly download all block info and never updates current block info.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.