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