{"id":13651516,"url":"https://github.com/subscan-explorer/subscan-essentials","last_synced_at":"2025-04-09T11:09:47.539Z","repository":{"id":38285733,"uuid":"211015875","full_name":"subscan-explorer/subscan-essentials","owner":"subscan-explorer","description":"Polkadot Substrate Explorer Subscan","archived":false,"fork":false,"pushed_at":"2024-04-22T08:42:43.000Z","size":10335,"stargazers_count":195,"open_issues_count":31,"forks_count":110,"subscribers_count":14,"default_branch":"master","last_synced_at":"2024-10-30T01:37:04.789Z","etag":null,"topics":["blockchain","blockchain-explorer","explorer","substrate"],"latest_commit_sha":null,"homepage":"https://www.subscan.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subscan-explorer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2019-09-26T06:27:05.000Z","updated_at":"2024-09-23T14:35:20.000Z","dependencies_parsed_at":"2024-01-03T05:14:21.767Z","dependency_job_id":"ca36e671-ac4b-4071-9d21-a038299543ba","html_url":"https://github.com/subscan-explorer/subscan-essentials","commit_stats":null,"previous_names":["itering/subscan","itering/subscan-essentials"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subscan-explorer%2Fsubscan-essentials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subscan-explorer%2Fsubscan-essentials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subscan-explorer%2Fsubscan-essentials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subscan-explorer%2Fsubscan-essentials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subscan-explorer","download_url":"https://codeload.github.com/subscan-explorer/subscan-essentials/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248027408,"owners_count":21035594,"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":["blockchain","blockchain-explorer","explorer","substrate"],"created_at":"2024-08-02T02:00:50.208Z","updated_at":"2025-04-09T11:09:47.522Z","avatar_url":"https://github.com/subscan-explorer.png","language":"Go","funding_links":[],"categories":["Client Libraries","Go"],"sub_categories":[],"readme":"![grants_badge](./grants_badge.png)\n\n# Subscan Essentials\n\n![License: GPL](https://img.shields.io/badge/license-GPL-blue.svg)\n[![Go Report Card](https://goreportcard.com/badge/github.com/itering/subscan)](https://goreportcard.com/report/github.com/itering/subscan)\n![subscan](https://github.com/itering/subscan/workflows/subscan/badge.svg)\n\nSubscan Essentials is a high-precision blockchain explorer scaffold project. \nIt supports substrate-based blockchain networks with developer-friendly interface, standard or custom module parsing capabilities. \nIt's developed by the Subscan team and used in [subscan.io](https://www.subscan.io/). \nDevelopers are free to use the codebase to extend functionalities and develop unique user experiences for their audiences.\n\n## Contents\n\n- [Feature](#Feature)\n- [QuickStart](#QuickStart)\n  - [Requirement](#Requirement)\n  - [Structure](docs/tree.md)\n  - [Installation](#Install)\n  - [UI](#UI)\n  - [Config](#Config)\n  - [Usage](#Usage)\n  - [Docker](#Docker)\n  - [Test](#Test)\n- [Contributions](#Contributions)\n- [LICENSE](#LICENSE)\n- [Resource](#Resource)\n\n## Feature\n\n1. Support Substrate network [custom](/custom_type.md) type registration \n2. Support index Block, Extrinsic, Event, log\n3. More data can be indexed by custom [plugins](/plugins)\n4. [Gen](https://github.com/itering/subscan-plugin/tree/master/tools) tool can automatically generate plugin templates\n5. Built-in default HTTP API [DOC](/docs/index.md)\n\n\n## QuickStart\n\n### Requirement\n\n* Linux / Mac OSX\n* Git\n* Golang 1.12.4+\n* Redis 3.0.4+\n* MySQL 5.6+\n* Node 8.9.0+\n\n### Install\n\n```bash\n./build.sh build\n\n//UI\ncd ui \u0026\u0026 yarn \u0026\u0026 yarn dev\n```\n\n### UI\n\nThe ui part is built with [nuxt.js](https://nuxtjs.org/) and [amis](https://github.com/baidu/amis)\n\nDemo: [blocks](/ui/plugins/blocks.js), refer to [amis docs](https://baidu.gitee.io/amis/docs/index) for further detail.\n\n[Online Demo](https://crab.demo.subscan.io/)\n\nPlease change proxy target in nuxt.config.js to your server name in development.\n\n```js\nproxy: {\n   \"/api\": {\n      target: \"https://your_server_name.com\",\n      secure: false,\n      changeOrigin: true,\n      pathRewrite: {\n         \"^/api\": \"/api\"\n      }\n   },\n}\n```\n\nPlease change browserBaseURL in nuxt.config.js to your server name in production.\n\n```js\naxios: {\n   proxy: process.env.NODE_ENV !== 'production',\n    browserBaseURL: process.env.NODE_ENV !== 'production' ? \"\" : \"https://your_server_name.com\"\n},\n```\n\n#### Example\n\n![ui_demo](./ui_demo.png)\n\nFirst choose a search type, and enter search content.\nThen click search button, result will be shown in the output section.\n\n#### Feature Supported\n\n- search block detail by block number or block hash\n- search extrinsic detail by extrinsic index or extrinsic hash\n- search runtime info by spec version\n- plugin (blocks, events)\n\n\n### Config\n\n#### Init config file \n\n```bash\ncp configs/config.yaml.example configs/config.yaml\n```\n\n#### Set\n\n1. Redis  configs/redis.toml\n\n\u003e addr： redis host and port (default: 127.0.0.1:6379)\n\n2. Mysql  configs/mysql.toml\n\n\u003e host: mysql host (default: 127.0.0.1)\n\u003e user: mysql user (default: root)\n\u003e pass: mysql user passwd (default: \"\")\n\u003e db:   mysql db name (default: \"subscan\")\n\n3. Http   configs/http.toml\n\n\u003e addr: local http server port (default: 0.0.0.0:4399)\n\n\n### Usage\n\n- Start DB\n\n**Make sure you have started redis and mysql**\n\n- Substrate Daemon\n```bash\ncd cmd\n./subscan start substrate\n```\n\n- Api Server\n```bash\ncd cmd\n./subscan\n```\n\n- Help \n\n```\nNAME:\n   SubScan - SubScan Backend Service, use -h get help\n\nUSAGE:\n   main [global options] command [command options] [arguments...]\n\nVERSION:\n   1.0\n\nDESCRIPTION:\n   SubScan Backend Service, substrate blockchain explorer\n\nCOMMANDS:\n     start    Start one worker, E.g substrate\n     install  Create database and create default conf file\n     help, h  Shows a list of commands or help for one command\n\nGLOBAL OPTIONS:\n   --conf value   (default: \"../configs\")\n   --help, -h     show help\n   --version, -v  print the version\n\n\n```\n\n### Docker\n\nUse [docker-compose](https://docs.docker.com/compose/) can start projects quickly \n\nCreate local network\n\n```\ndocker network create app_net\n```\n\nRun mysql and redis container\n\n```bash\ndocker-compose -f docker-compose.db.yml up  -d\n```\n\nRun subscan service\n\n```bash\ndocker-compose build\ndocker-compose up -d\n```\n\n### Test\n\n\n**default test mysql database is subscan_test. Please CREATE it or change configs/mysql.toml**\n\n```bash\ngo test ./...\n\n//UI\ncd ui \u0026\u0026 yarn \u0026\u0026 yarn test\n```\n\n\n## Contributions\n\nWe welcome contributions of any kind. Issues labeled can be good (first) contributions.\n\n## LICENSE\n\nGPL-3.0\n\n\n## Resource\n \n- [ITERING] https://github.com/itering\n- [Darwinia] https://github.com/darwinia-network/darwinia\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubscan-explorer%2Fsubscan-essentials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubscan-explorer%2Fsubscan-essentials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubscan-explorer%2Fsubscan-essentials/lists"}