Every password is built from crypto.getRandomValues with rejection sampling — no biased modulo, no Math.random. Pick your length (6–64), enable any combination of A–Z, a–z, 0–9, and symbols, and the strength bar updates live in bits of entropy.
The widget guarantees at least one character from each enabled class, so a 12-character password with all four classes really has all four. An optional Avoid look-alikes toggle strips l 1 I O 0 o for passwords you'll need to type from a screen.
Changes apply live — the embed link on the right and the preview above update instantly.
/embed.Embed link.