Why Pigfox builds in Go
Everything on this site is a Go program. Not as a preference — as the thing you are currently looking at. The pages, the 29 tools, the 34 demos, and the job queue that publishes a researched article every day with nobody at the keyboard are one Go binary and one deploy.
What Go is actually good at here
The work is I/O-bound and concurrent. A single check fans out to DNS resolvers, certificate-transparency logs and a dozen platform endpoints at once, puts a deadline on every one of them, and returns whatever came back inside the budget. Goroutines make that ordinary rather than clever, and the deadline is a parameter rather than a framework. That is the whole reason, and it is narrower than “Go is fast”.
The second reason is operational. One static binary, no runtime to install, no dependency resolution at boot — the thing that runs in production is the thing that was built, and it starts in milliseconds.
What is published
Thirteen Go repositories, each doing one thing, each on the repositories page with its source:
- xlog — structured logger, slog-backed, byte-stable output.
- paginate — pagination math and template-ready data.
- sgp4-go — SGP4/SDP4 orbit propagator, verified against Vallado’s own reference set, zero dependencies.
- jsonld-go — schema.org site identity as sibling JSON-LD scripts. Standard library only.
- eth-bridge-go — moving ETH across the OP Stack Standard Bridge, with bridge and portal addresses discovered from the chains at runtime rather than hardcoded. Verified live against Ethereum Sepolia ↔ OP Sepolia and Ethereum Sepolia ↔ Base Sepolia. Withdrawals cover the initiation leg and persist prove parameters; prove and finalize are not implemented.
- mcp-metered — authentication, per-call metering, rate limiting and cost ceilings for a Model Context Protocol server.
- cosmos-light-go — replays Cosmos consensus and state proofs offline, from chain data captured once and frozen.
- bench-lab, etl-lab, langdag-lab, slack-ai-lab — evaluation and pipeline harnesses that run under test with no network, no token and no database file.
- render-env-sync, evm-wallet-generator.
That eth-bridge-go sentence is the point of this section. A repository that tells you which half is missing is worth more than one that leaves you to find out.
Ten Go developer tools
Free, in the browser, at /tools/go: escape analysis, method sets, struct alignment, slice growth, channel deadlock, goroutine dumps, GC tuning, benchstat, minimal version selection, and time layouts. Each one exists because it answers a question that had to be looked up more than twice. The heavier ones compile to WebAssembly and run entirely on your machine.
Where Go is the wrong answer
Plenty of this estate is not Go, and saying so is more useful than claiming one language covers everything. The zero-knowledge circuits are Circom. The contracts are Solidity, held to a shared verification pipeline before any of them reach a chain. The orbit propagator’s reference implementation is C++, and sgp4-go is a port checked against it rather than a rewrite. Several labs are Rust, because the point of those was to show what a borrow checker refuses.
Go is the thing holding all of it together and serving the result.