{"id":20433899,"url":"https://github.com/flashbots/eth-faucet","last_synced_at":"2025-10-06T09:08:47.342Z","repository":{"id":226003881,"uuid":"767439474","full_name":"flashbots/eth-faucet","owner":"flashbots","description":"Faucet for ethereum based chains","archived":false,"fork":false,"pushed_at":"2024-04-15T15:59:27.000Z","size":172,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-09-24T12:38:39.396Z","etag":null,"topics":["ethereum","faucet"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flashbots.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":"2024-03-05T09:47:59.000Z","updated_at":"2025-07-29T14:40:21.000Z","dependencies_parsed_at":"2024-03-05T12:23:06.405Z","dependency_job_id":"bdc45b7c-07b3-4552-bfbf-0174ec732034","html_url":"https://github.com/flashbots/eth-faucet","commit_stats":null,"previous_names":["flashbots/eth-faucet"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/flashbots/eth-faucet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flashbots%2Feth-faucet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flashbots%2Feth-faucet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flashbots%2Feth-faucet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flashbots%2Feth-faucet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flashbots","download_url":"https://codeload.github.com/flashbots/eth-faucet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flashbots%2Feth-faucet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278584815,"owners_count":26010854,"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-10-06T02:00:05.630Z","response_time":65,"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":["ethereum","faucet"],"created_at":"2024-11-15T08:22:16.574Z","updated_at":"2025-10-06T09:08:47.303Z","avatar_url":"https://github.com/flashbots.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eth-faucet\n\nInspired and significantly influenced by https://github.com/chainflag/eth-faucet\n\n## TL;DR\n\n- Run\n\n  ```shell\n  make docker-compose\n  ```\n\n- And then open https://localhost:5173\n\n## Features\n\n- Authentication with twitter or github.\n- Rate-limiting with redis.\n\n## Configuration\n\n\u003e\n\u003e [!IMPORTANT]\n\u003e\n\u003e Backend and frontend must share the same `AUTH_SECRET` so that JWT api tokens\n\u003e could be validated.\n\u003e\n\n### Backend configuration\n\nBoth, environment variables and command line switches are possible to use.\n\n```text\nCHAIN:\n\n--chain-name name            chain name (default: \"testnet\") [$FAUCET_CHAIN_NAME]\n--chain-token-symbol symbol  token symbol (default: \"tEth\") [$FAUCET_CHAIN_TOKEN_SYMBOL]\n\nFAUCET:\n\n--faucet-interval duration                       minimum duration to wait between funding rounds (default: 15m0s) [$FAUCET_INTERVAL]\n--faucet-interval-address duration               minimum duration to wait between funding rounds for the same receiving address (default: 15m0s) [$FAUCET_INTERVAL_ADDRESS]\n--faucet-interval-identity duration              minimum duration to wait between funding rounds for the same identity (default: 15m0s) [$FAUCET_INTERVAL_IDENTITY]\n--faucet-interval-identity-and-address duration  minimum duration to wait between funding rounds for the same identity and receiving address (default: 15m0s) [$FAUCET_INTERVAL_IDENTITY_AND_ADDRESS]\n--faucet-interval-ip duration                    minimum duration to wait between funding rounds for the same source IP (default: 15m0s) [$FAUCET_INTERVAL_IP]\n--faucet-payout number                           number of tokens to transfer per user request (default: 1) [$FAUCET_PAYOUT]\n\nREDIS:\n\n--redis-namespace namespace  rate-limiting redis namespace (default: \"eth-faucet\") [$FAUCET_REDIS_NAMESPACE]\n--redis-timeout timeout      timeout for redis operations (default: 200ms) [$FAUCET_REDIS_TIMEOUT]\n--redis-url url              redis url for rate-limiting (default: \"redis://localhost:6379\") [$FAUCET_REDIS_URL]\n\nRPC:\n\n--rpc-endpoint endpoint  endpoint for ethereum json-rpc connection (default: \"http://localhost:8545\") [$FAUCET_RPC_ENDPOINT]\n--rpc-timeout timeout    timeout for ethereum json-rpc operations (default: 5s) [$FAUCET_RPC_TIMEOUT]\n\nSERVER:\n\n--server-auth-secret secret           jwt authentication secret [$FAUCET_SERVER_AUTH_SECRET, $AUTH_SECRET]\n--server-listen-address host:port     host:port for the server to listen on (default: \"0.0.0.0:8080\") [$FAUCET_SERVER_LISTEN_ADDRESS]\n--server-max-request-body-size bytes  max request body size in bytes (default: 1024) [$FAUCET_SERVER_MAX_REQUEST_BODY_SIZE]\n--server-proxy-count count            count of reverse proxies in front of the server (default: 0) [$FAUCET_SERVER_PROXY_COUNT]\n\nWALLET:\n\n--wallet-keystore json-file          funding wallet's keystore json-file [$FAUCET_WALLET_KEYSTORE]\n--wallet-keystore-password password  funding wallet's keystore password [$FAUCET_WALLET_KEYSTORE_PASSWORD]\n--wallet-private-key hex             funding wallet's private key hex [$FAUCET_WALLET_PRIVATE_KEY]\n```\n\n### Frontend configuration\n\nFrontend is configured with environment variables (or with [`dotfiles`](https://www.npmjs.com/package/dotfiles)).\n\n```shell\n# 32 random hexadecimals (e.g. openssl rand -hex 32)\nAUTH_SECRET=\"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef\"\n\n# oauth 2.0 client id\nAUTH_TWITTER_ID=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\n# oauth 2.0 client secret\nAUTH_TWITTER_SECRET=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\n\n# github app id\nAUTH_GITHUB_ID=\"xxxxxxxxxxxxxxxxxxxx\"\n# github app secret\nAUTH_GITHUB_SECRET=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\n\n# base host from which the faucet is serving\nORIGIN=https://f.q.d.n.com\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflashbots%2Feth-faucet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflashbots%2Feth-faucet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflashbots%2Feth-faucet/lists"}