{"id":19952864,"url":"https://github.com/ethersphere/node-funder","last_synced_at":"2025-05-03T19:30:59.040Z","repository":{"id":63672025,"uuid":"566380366","full_name":"ethersphere/node-funder","owner":"ethersphere","description":"tool to fund bee nodes","archived":false,"fork":false,"pushed_at":"2025-01-31T12:16:24.000Z","size":145,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-04-07T20:21:23.000Z","etag":null,"topics":["bee","swarm"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ethersphere.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":"2022-11-15T14:55:28.000Z","updated_at":"2025-01-31T12:12:59.000Z","dependencies_parsed_at":"2024-12-03T10:34:55.240Z","dependency_job_id":null,"html_url":"https://github.com/ethersphere/node-funder","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethersphere%2Fnode-funder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethersphere%2Fnode-funder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethersphere%2Fnode-funder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethersphere%2Fnode-funder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ethersphere","download_url":"https://codeload.github.com/ethersphere/node-funder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252241953,"owners_count":21717076,"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":["bee","swarm"],"created_at":"2024-11-13T01:14:37.292Z","updated_at":"2025-05-03T19:30:59.031Z","avatar_url":"https://github.com/ethersphere.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-funder\n\n[![test](https://github.com/ethersphere/node-funder/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/ethersphere/node-funder/actions/workflows/test.yml)\n[![lint](https://github.com/ethersphere/node-funder/actions/workflows/lint.yml/badge.svg?branch=main)](https://github.com/ethersphere/node-funder/actions/workflows/lint.yml)\n[![coverage](https://raw.githubusercontent.com/ethersphere/node-funder/badges/.badges/main/coverage.svg)](./.github/testcoverage.yml)\n\nNode funder is tool to fund (top up) bee nodes up to the specified amount. It can fund all nodes in k8s namespace or it can fund only specified addresses.\n\n## Arguments\n\n### Funding node\n\n- `chainNodeEndpoint` - RPC URL of blockchain node (Infura API URL)\n- `walletKey` - private key of wallet which will be used to fund nodes (hex encoded string value).\n- specify one argument:\n  - `namespace` - the k8s namespace to fund all nodes in this namespace, or\n  - `addresses` - comma separated list of wallet addresses (hex encoded string value) to fund wallets directly\n- `minSwarm` - min amount of Swarm tokens node should have (on mainnet this is xBZZ). Node is not funded if it already has more then specified.\n- `minNative` - min amount of blockchain native tokens node should have (on mainnet this is xDAI). Node is not funded if it already has more then specified.\n\n### Staking node\n\n- `namespace` - the k8s namespace to stake all nodes in this namespace\n- `minSwarm` - min amount of Swarm tokens node should have staked\n\n## Command examples\n\n### Fund nodes in k8s namespace\n\n```console\n## Fund nodes in k8s namespace to have at least 10 Swarm and 0.5 native tokens\n\ngo run ./cmd fund --chainNodeEndpoint={...} --walletKey={...} --namespace={...} --minSwarm=10 --minNative=0.5\n\n## example\n## go run ./cmd fund --chainNodeEndpoint=\"wss://goerli.infura.io/ws/v3/apikey\" --walletKey=\"aaabbccddeeffdfd391e07b86b63ff7558ad711fed058461d0e4ceaae3cbebf16a\" --namespace=\"testnet\" --minSwarm=10 --minNative=0.5\n```\n\n### Fund addresses\n\n```console\n## Fund wallet addresses to have at least 10 Swarm and 0.5 native tokens\n\ngo run ./cmd fund --chainNodeEndpoint={...} --walletKey={...} --addresses={...} --minSwarm=10 --minNative=0.5\n\n## example\n## go run ./cmd fund --chainNodeEndpoint=\"wss://goerli.infura.io/ws/v3/apikey\" --walletKey=\"aaabbccddeeffdfd391e07b86b63ff7558ad711fed058461d0e4ceaae3cbebf16a\" --addresses=\"0x4C4E453E72aF9939A27cac5a09ba583d72c4DfF0,0x4C4E453E72aF9939A27cac5a09ba583d72c4DfF0\" --minSwarm=10 --minNative=0.5\n```\n\n### Staking namespace\n\n```console\n## Stake all nodes to have at least 10 Swarm tokens staked\n\ngo run ./cmd stake --namespace={...} --minSwarm=10\n\n## example\n## go run ./cmd stake --namespace=\"testnet\" --minSwarm=10\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethersphere%2Fnode-funder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethersphere%2Fnode-funder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethersphere%2Fnode-funder/lists"}