{"id":19346924,"url":"https://github.com/godmode2k/eth_block_explorer","last_synced_at":"2025-02-24T09:43:26.134Z","repository":{"id":228082961,"uuid":"607556669","full_name":"godmode2k/eth_block_explorer","owner":"godmode2k","description":"Ethereum Block Explorer","archived":false,"fork":false,"pushed_at":"2024-11-04T14:08:14.000Z","size":5809,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-06T14:28:27.888Z","etag":null,"topics":["block-explorer","erc1155","erc20","eth","ethereum","ethereum-block-explorer","ethereum-json-rpc","geth-rpc","go-ethereum","nft"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/godmode2k.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://github.com/godmode2k"]}},"created_at":"2023-02-28T07:59:58.000Z","updated_at":"2024-11-04T14:08:18.000Z","dependencies_parsed_at":"2024-03-17T02:40:28.369Z","dependency_job_id":"dc8c9626-77ec-46c3-a6c7-ca287a3430f6","html_url":"https://github.com/godmode2k/eth_block_explorer","commit_stats":null,"previous_names":["godmode2k/eth_block_explorer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godmode2k%2Feth_block_explorer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godmode2k%2Feth_block_explorer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godmode2k%2Feth_block_explorer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godmode2k%2Feth_block_explorer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/godmode2k","download_url":"https://codeload.github.com/godmode2k/eth_block_explorer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240457944,"owners_count":19804489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["block-explorer","erc1155","erc20","eth","ethereum","ethereum-block-explorer","ethereum-json-rpc","geth-rpc","go-ethereum","nft"],"created_at":"2024-11-10T04:13:18.049Z","updated_at":"2025-02-24T09:43:26.094Z","avatar_url":"https://github.com/godmode2k.png","language":"Go","readme":"# Ethereum Block Explorer\n\n\nSummary\n----------\n\u003e Ethereum Block Explorer \u003c/br\u003e\n\u003e\n\u003e WORK IN-PROGRESS (NOTE: NOT READY for Production) \u003c/br\u003e\n\u003e This is a test version. so, USE THIS AT YOUR OWN RISK.\n\n\nEnvironment\n----------\n\u003e build all and tested on GNU/Linux\n\n    GNU/Linux: Ubuntu 20.04_x64 LTS\n    Ethereum: geth vx.x.x\n    Python: v3.8.10 (pip 20.0.2)\n    Go: go1.22.5 linux/amd64\n    Network: Ethereum Private Network\n    Node.js: node-v20.15.0\n    MySQL: v8.0.32\n\n\nBackend\n----------\n\u003e HTTP RPC Server: \u003c/br\u003e\n\u003e Fetcher Service: Supports ETH, ERC-20, ERC-1155 (NFT) \u003c/br\u003e\n\u003e NFT Metadata APIs\n\n\nFrontend\n----------\n\u003e Source-based from Filscan-frontend (Vue.js): https://github.com/Filscan-Team/filscan-frontend\n\n\nRun\n----------\n```sh\n---------------------------------\nPython\n---------------------------------\n$ sudo apt-get install wget python3 python3-pip\n\n$ sudo apt-get install mysql-server\nor\n$ sudo apt-get install mariadb-server\n\n\n\n---------------------------------\nEthereum Private Network\n---------------------------------\nSEE:\n - https://github.com/godmode2k/blockchain/tree/master/build_guide\n - (Docker) https://github.com/godmode2k/blockchain/tree/master/build_guide/ethereum\n\n\n\n---------------------------------\nGolang\n---------------------------------\n$ wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz\n$ tar xzvf go1.22.5.linux-amd64.tar.gz -C /usr/local/\n$ echo 'export PATH=$PATH:/usr/local/go/bin' \u003e\u003e $HOME/.profile\n$ echo 'export PATH=$PATH:/usr/local/go/bin' \u003e\u003e $HOME/.bashrc\n\n\n\n---------------------------------\nNode.js\n---------------------------------\n$ wget https://nodejs.org/dist/v20.15.0/node-v20.15.0-linux-x64.tar.xz\n$ tar xJvf node-v20.15.0-linux-x64.tar.xz\n$ echo 'export PATH=$PATH:$HOME/node-v20.15.0-linux-x64/bin' \u003e\u003e $HOME/.profile\n$ echo 'export PATH=$PATH:$HOME/node-v20.15.0-linux-x64/bin' \u003e\u003e $HOME/.bashrc\n\n\n\n---------------------------------\nBackend\n---------------------------------\n1. Ethereum\n - run 'geth' with port \"8544\"\n\n2. RPC Server: backend/rpc_server_main.go\n(Edit)\n - // Connect to an Ethereum RPC Server\n - var SERVER_ADDRESS = \"127.0.0.1\"\n - var SERVER_PORT = \"8544\"\n -\n - // Connect to Database\n - // SEE: mysql.sql\n - var DB_SERVER_ADDRESS = \"127.0.0.1:3306\"\n - var DB_NAME = \"ethereum_block_explorer\"\n - var DB_LOGIN_USERNAME = \"root\"\n - var DB_LOGIN_PASSWORD = \"mysql\"\n -\n - // HTTP RPC Server\n - var HTTP_RPC_SERVER_HOST_PORT = \":1234\" // Internal\n - var HTTP_JSONRPC_SERVER_HOST_PORT = \":1235\" // External\n\n3. Fetcher Service: server/eth_txns_fetcher_main_func.go\n(Edit)\n - // Connect to RPC Server\n - var SERVER_ADDRESS = \"127.0.0.1\"\n - var SERVER_PORT = \"8544\"\n\n - // Connect to Database\n - var DB_SERVER_ADDRESS = \"127.0.0.1:3306\"\n - var DB_NAME = \"ethereum_block_explorer\"\n - var DB_LOGIN_USERNAME = \"root\"\n - var DB_LOGIN_PASSWORD = \"mysql\"\n\n// Dependencies\n$ go get -u github.com/go-sql-driver/mysql\n$ go get github.com/mattn/go-sqlite3\n\n4. Database\n$ mysql -u root -p \u003c mysql.sql\n\n5. NFT Metadata APIs: nft_meta_apis/nft_meta_api_golang/nft_meta_apis_main.go\n(Edit)\n - var CERT = \"/etc/ssl/example.com+4.pem\"\n - var CERT_KEY = \"/etc/ssl/example.com+4-key.pem\"\n - //var HOST = \":443\" // https\n - var HOST = \":8888\" // http\n\n\n\n---------------------------------\nFrontend\n---------------------------------\n.env.development\n.env.pre\n.env.production\n.env.test\n\n(Edit)\n - // HTTP RPC Server (backend)\n - VUE_APP_BASE_URL=http://x.x.x.x:1235\n\n\n\nvue.config.js\n\n(Edit)\n - // Service port\n - port: \"4396\"\n\n\n// dependency\n$ npm install\n\n\n\n---------------------------------\nRun\n---------------------------------\n// Backend\n$ cd backend\n$ go run rpc_server_main.go\n\n\n// Frontend\n$ cd frontend\n$ npm run serve\n\n\n(Web Browser)\nhttp://127.0.0.1:4396\n\n\n// Backend: NFT Meta APIs {\n$ cd nft_meta_apis/nft_meta_api_golang\n$ sh run_ntf_meta_apis.sh\n\n(resource path)\nnft_meta_apis/nft_meta_api_golang/assets/resources/\n\nDirectory:    \u003cNFT-Name\u003e/: nft1/\nMetadata :    \u003cNFT-Name\u003e_\u003cid\u003e_meta.json: nft1_0_meta.json\nImage    :    \u003cNFT-Name\u003e_\u003cid\u003e.jpg: nft1_0.jpg\n\nnft1/nft1_0_meta.json\nnft1/nft1_0.jpg\n\n\n(metadata)\n$ curl http://172.17.0.2:8888/apis/tokens/nft1/0\n$ curl http://172.17.0.2:8888/apis/tokens/nft1/1\n{\n  \"description\": \"Test NFT1 #1 image: warty-final-ubuntu\", \n  \"external_url\": \"http://172.17.0.2:8888/apis/tokens/nft1/1\", \n  \"image\": \"http://172.17.0.2:8888/resources/tokens/nft1/1\", \n  \"name\": \"Test NFT1 #1\",\n  \"attributes\": []\n}\n\n\n(image)\n$ wget http://172.17.0.2:8888/resources/tokens/nft1/0\n$ wget http://172.17.0.2:8888/resources/tokens/nft1/1\n// Backend: NFT Meta APIs }\n\n\n\n---------------------------------\nNodeJS: node-v20.15.0\nError:\n---------------------------------\n// Frontend\n\n$ cd frontend\n\n\n// ERROR #1\n$ npm install\n\n(ERROR)\nnpm error gyp ERR! UNCAUGHT EXCEPTION\nnpm error gyp ERR! stack TypeError: Cannot assign to read only property 'cflags' of object '#\u003cObject\u003e'\n...\nnpm error gyp ERR! node -v v20.15.0\nnpm error gyp ERR! node-gyp -v v7.1.2\nnpm error gyp ERR! Node-gyp failed to build your package.\n\n(FIX)\n// node-sass\n// https://github.com/sass/node-sass\n//\n// NodeJS 20: 9.0+ (supported)\n// NodeJS 19: 8.0+ (supported)\n// ...\n\n(EDIT)\n$ vim package.json\n\"devDependencies\": {\n...\n\"node-sass\": \"^9.0.0\",\n...\n}\n$ npm install\n\n\n\n// ERROR #2\n$ npm run serve\n\n(ERROR)\nError: error:0308010C:digital envelope routines::unsupported\n\n(FIX)\n$ export NODE_OPTIONS=--openssl-legacy-provider\n$ npm run serve\nor\n$ NODE_OPTIONS=--openssl-legacy-provider npm run serve\n\n\n\n// ERROR #3\n$ NODE_OPTIONS=--openssl-legacy-provider npm run serve\n\n(ERROR)\nNode Sass version 9.0.0 is incompatible with ^4.0.0 || ^5.0.0 || ^6.0.0.\n\n(FIX)\n$ rm -f package-lock.json\n$ rm -fr node_modules\n$ npm install\n$ npm run serve\n\n```\n\n\nScreenshots\n----------\n\n\u003e Ethereum Block Explorer \u003c/br\u003e\n\u003cimg src=\"https://github.com/godmode2k/eth_block_explorer/raw/main/screenshots/screenshot.png\" width=\"50%\" height=\"50%\"\u003e\n\u003cbr\u003e\n\u003cimg src=\"https://github.com/godmode2k/eth_block_explorer/raw/main/screenshots/screenshot_1.jpg\" width=\"50%\" height=\"50%\"\u003e\n\u003cbr\u003e\n\u003cimg src=\"https://github.com/godmode2k/eth_block_explorer/raw/main/screenshots/screenshot_2.jpg\" width=\"50%\" height=\"50%\"\u003e\n\u003cbr\u003e\n\u003cimg src=\"https://github.com/godmode2k/eth_block_explorer/raw/main/screenshots/screenshot_3.jpg\" width=\"50%\" height=\"50%\"\u003e\n\n","funding_links":["https://github.com/godmode2k"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodmode2k%2Feth_block_explorer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgodmode2k%2Feth_block_explorer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodmode2k%2Feth_block_explorer/lists"}