{"id":24562543,"url":"https://github.com/veriblock/vbk-ri-stratum-pool","last_synced_at":"2025-08-23T14:35:38.917Z","repository":{"id":73757464,"uuid":"343837960","full_name":"VeriBlock/vbk-ri-stratum-pool","owner":"VeriBlock","description":null,"archived":false,"fork":false,"pushed_at":"2023-03-28T17:01:40.000Z","size":1216,"stargazers_count":3,"open_issues_count":3,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-25T07:47:57.577Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VeriBlock.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2021-03-02T16:24:15.000Z","updated_at":"2024-01-08T20:33:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"db0d6cb1-81bc-4a88-8a5f-0c88de550961","html_url":"https://github.com/VeriBlock/vbk-ri-stratum-pool","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/VeriBlock/vbk-ri-stratum-pool","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VeriBlock%2Fvbk-ri-stratum-pool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VeriBlock%2Fvbk-ri-stratum-pool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VeriBlock%2Fvbk-ri-stratum-pool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VeriBlock%2Fvbk-ri-stratum-pool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VeriBlock","download_url":"https://codeload.github.com/VeriBlock/vbk-ri-stratum-pool/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VeriBlock%2Fvbk-ri-stratum-pool/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271752125,"owners_count":24814750,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-01-23T09:16:12.494Z","updated_at":"2025-08-23T14:35:38.894Z","avatar_url":"https://github.com/VeriBlock.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reference Implementation of POP-enabled Stratum V1 pool\n\n### To run pool locally:\n\n1. Make sure you use node V13 or lower.\n    - use [nvm](https://github.com/nvm-sh/nvm#installation)\n    - or [n](https://github.com/tj/n)\n2. `git clone https://github.com/VeriBlock/vbk-ri-stratum-pool \u0026\u0026 cd vbk-ri-stratum-pool`\n3. `npx lerna bootstrap` - this will run `lerna bootstrap` command without installation, which is equal to `npm install` in each subpackage. If this fails, open issue in this repo with details.\n4. For new coin, create `packages/portal/coins/\u003cname\u003e.json`, for existing coin, skip this step.\n5. Create pool config:\n    1. Go to `packages/portal/pool_configs`\n    2. Copy `litecoin_example.json` and *rename* this file, we will use `vbtc_config.json`\n    3. Inside `vbtc_config.json`:\n         1. `enabled` - change to `true`\n         2. `coin` - set to a filename from `coins` dir, for example `vbtc.json`\n         3. Set address (must be legacy) and reward recipients (optional)\n         4. In `paymentProcessing` set daemon host, port, and creds.\n         5. In `ports` section, each number is a new pool port. For simple deployments, leave single port.\n            - if you're not sure what diffs are, set `diff` to 0.01 and remove `varDiff`\n         6. `daemons` - define one or multiple (for redundancy) nodes for pool to connect.\n         7. `p2p` - defines whether block broadcasting over p2p works or not. Make sure to set correct p2p port.\n         8. `mposMode` - in this mode all shares are saved into MySQL instead of Redis. Disable for simple deployments.\n6. Create `config.json` in *same folder as init.js*:\n   1. Go to `packages/portal`\n   2. Copy `config_example.json` and name it `config.json`\n   3. Inside `config.json`:\n      1. `clustering` - defines number of pool processes to run. For simple deployments use `enabled: false`\n      2. `redis` - define host and port of live Redis instance.\n      3. `website` - define host, port for website, and also **disable adminCenter**.\n      4. `switching` and `profitSwitch` can be skipped for simple deployments.\n7. Go to `packages/portal`\n8. `node init.js` will run pool daemon and website. Redis and Nodes must be started beforehand.\n\n### To run pool in docker:\n\nUse docker-compose:\n\n```yml\nversion: '3'\nservices:\n  pool:\n    image: veriblock/pop-stratum:latest\n    ports:\n      # stratum v1 port (defined in poolconfig.json)\n      - 3333:3333\n      # web (defined in config.json)\n      - 8080:8080\n    volumes:\n      # mount config.json (create manually beforehand)\n      - ./config.json:/opt/stratum/packages/portal/config.json:ro\n      # mount coin.json (create manually beforehand)\n      - ./coin.json:/opt/stratum/packages/portal/coins/coin.json:ro\n      # mount poolconfig.json (create manually beforehand)\n      - ./poolconfig.json:/opt/stratum/packages/portal/pool_configs/poolconfig.json:ro\n    depends_on:\n      - redis\n\n  redis:\n    image: redis\n```\n\n\n### Test with cpuminer\n\n1. Build https://github.com/pooler/cpuminer\n2. `./minerd -o 'stratum+tcp://localhost:3333' -u n4jSe18kZMCdGcZqaYprShXW6EH1wivUK1 -p x -a sha256d`\n\nWhere:\n- `localhost:3333` is pool's host and port\n- `n4jSe18kZMCdGcZqaYprShXW6EH1wivUK1` is a legacy address (can be generated via `vbitcoin-cli getnewaddress \"\" legacy`)\n- `x` is password\n- `sha256d` is coin algorithm\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveriblock%2Fvbk-ri-stratum-pool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fveriblock%2Fvbk-ri-stratum-pool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveriblock%2Fvbk-ri-stratum-pool/lists"}