Blog
Short, original notes about the tools — published when we ship something useful.
- Aug 6, 2026Karpenter + EKS: ghost Target Groups and a zero-downtime fixField note on a common EKS pattern: manual ALBs, static node IPs in Target Groups, and Karpenter. How TargetGroupBinding (AWS Load Balancer Controller) restores stability without rebuilding API Gateway.
- Aug 6, 2026I almost lost 20 years of Outlook and 500 Xbox games to MFA — a passkey saved meA real 2024 lockout: France trip for my partner’s scholarship, dead recovery phone, and how a casual passkey on her cheap laptop — not my ThinkPad — restored Outlook and Xbox.
- Aug 5, 2026UUID v4 in the browser: random IDs without a serverWhat UUID version 4 means (RFC 4122), why crypto.getRandomValues matters, and how QSTools generates batches locally.
- Aug 4, 2026Base64 vs URL-safe Base64 (and when JWT needs the latter)Standard Base64 uses +/= ; URL-safe swaps in -/_ and often drops padding. How QSTools encodes UTF-8 text in the browser.
- Aug 3, 2026Strong passwords in the browser (and what entropy actually means)How QSTools generates passwords with crypto.getRandomValues, why length beats clever substitutions, and when to exclude ambiguous characters.
- Jul 13, 2026What's inside a JWT (and what this decoder does)A practical look at JWT header, payload, and signature — plus why QSTools only decodes in the browser.