Skip to content
← selected work

Infra · Movement Labs

Testnet Faucet & Discord Bot

The faucet every Movement developer uses to get testnet funds, plus the Discord bot version. Mine from the first one onward.

Period
2023 - 2026
Role
Owner
PRs authored
37
Source
Public

The problem

A public faucet hands out free tokens, so it gets drained and abused constantly, and it still has to work for legitimate developers across several live networks.

What I did

  • Shipped the original faucets and added each network as it came online: devnet, testnet, Imola, Baku, Holesky, Porto.
  • Layered on abuse resistance: rate limits, then reCAPTCHA, then a migration to hCaptcha.
  • Hardened it operationally with error handling, request timeouts, and health checks.
  • Built the Discord bot: network selection, per-user limits, health checks, and a container CI pipeline.

Stack

TypeScriptNext.jsPythonDockerAptos SDK