Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

How I built errno.help - and what broke along the way

说明与用途

errno.help 将常用开发工具整合到一个网页应用中,提供客户端处理和安全的服务器请求,提升工作效率与信任度。

问题

Developers repeatedly use multiple online tools for CIDR math, JWT decoding, hashing, etc., leading to fragmented workflows and trust concerns.

结果

errno.help consolidates common IT/dev utilities into a single, client‑side first web app with secure server‑side services, robust rate limiting, and a clean design, improving workflow efficiency and trust.

工作流

  • 1. Identify core utilities (CIDR, JWT, hash, UUID, YAML⇄JSON, cron, DNS/WHOIS/ASN/GeoIP, Windows error reference, command builders).
  • 2. Implement client‑side logic using native Web APIs (crypto, randomUUID).
  • 3. Add server‑side Next.js API routes for DNS, WHOIS, ASN, GeoIP, port checker, ensuring no client‑side API keys.
  • 4. Configure GeoIP provider: switch from MaxMind to ipinfo.io for easier auth and commercial‑friendly free tier.
  • 5. Implement rate limiting keyed on X‑Forwarded‑For, then adjust to use x‑real‑ip on Vercel and httpOnly cookie IDs elsewhere.
  • 6. Resolve layout issue by moving viewport lock to landing page root instead of global body.
  • 7. Deploy to Vercel, test, iterate.
  • 8. Open‑source under MIT on GitHub.
  • 9. Plan future feature additions (Base64, regex, more command builders).

证据

Nothing you paste into the JWT decoder ever leaves your machine

来源

The GeoIP service rejected our credentials.

来源

rate limiting keyed on X-Forwarded-For can be trivially bypassed

来源

  • 记录日期: 2026-09-22T02:00:46.947Z