- What character sets?
- Hex, base64, base64url, base58 (no ambiguous chars), alphanumeric, plus custom sets. Pick the one your downstream system expects.
- Is it crypto-secure?
- Yes — uses `crypto.getRandomValues`, the browser's CSPRNG. Safe for API keys, session tokens, and any security-sensitive randomness.
- How long should I make it?
- 16 hex chars: 64 bits of entropy (guessable in theory, fine for non-adversarial IDs). 32 hex: 128 bits (uncrackable). 48+ for high-security tokens.
- What about URL-safe output?
- base64url and base58 are URL-safe (no +, /, or = characters). Hex is always URL-safe. Regular base64 needs URL encoding when put in query strings.