PackageTrack
Sign in Get early access

nanoid

A tiny, secure, URL-friendly, unique string ID generator for Rust.

0.5.0 22M downloads/mo #2004 most downloaded on crates.io mrdimidium/nanoid

What this package is like to depend on

Last release 4 months ago

13 Apr 2026

Release timing varies

gaps range from 8 days to 5.0 years

Nearly every release is documented

notes for 8 of 8 stable releases

Nothing withdrawn

no release was ever pulled

9 years old

8 releases · first in 2017

1 release in the last 12 months

see the full history below

Release timeline

8 releases · Dec 2017 to Apr 2026
2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 8
  1. 0.5.0 13 Apr 2026
    Release notes
    • Bump rand to 0.9
    • Add rngs::thread_local random source (#36)
    • format now accepts any FnMut(usize) -> Vec<u8> random generator, enabling seeded and stateful RNGs (#32, #41). Non-capturing fn(usize) -> Vec<u8> callers continue to work unchanged.
    • nanoid! macro size argument now accepts any expression, not only a single token (#28)
    • Specialized fast path for alphabets whose size is a power of two (#35). Note: for seeded RNGs paired with a power-of-two alphabet (e.g. SAFE, the new HEX_* presets), the number of random bytes consumed per ID has changed — the output for a given seed will differ from 0.4.0.
    • Add alphabet::HEX_LOWERCASE and alphabet::HEX_UPPERCASE presets (#39)
    • Optional smartstring feature for small-string-optimized output (#29)
    • Refreshed CI (GitHub Actions across OS matrix), drop Travis/AppVeyor
    • Switched benchmarks to criterion
    Open source →
  2. 0.4.0 07 Apr 2021
    Release notes
    • merge #25, from @fundon: bump the rand#0.8
    • merge #18, from @svenstaro
    • merge #21, from @svenstaro
    • merge #19, from @svenstaro
    • merge #20, from @svenstaro
    • merge #16, from @Exr0n
    • merge #15, from @Exr0n
    • merge #10, from @nbraud
    Open source →
  3. 0.3.0 08 Feb 2020
    Release notes
    • merge #3, from @TheIronBorn: various small improvements
    • merge #4, from @delimitry: fix typo in function name
    • Replace the ~ to - in alphabet
    • Add the common macros
    • Refactor structure. Remove pseudo-fast generator. Move format in lib.rs
    Open source →
  4. 0.2.0 07 Jan 2018
    Release notes
    • Added support for Windows
    • Moved to system randomness generator
    Open source →
  5. 0.1.3 06 Jan 2018
    Release notes
    • Renamed the safe alphabet
    • Added readme from rustdoc
    Open source →
  6. 0.1.2 05 Jan 2018
    Release notes
    • Updated the random number engine.
    • Fixed bugs in documentation.
    Open source →
  7. 0.1.1 04 Jan 2018
    Release notes
    • Integrated performance tests
    • Added example of custom random number generator.
    Open source →
  8. 0.1.0 26 Dec 2017
    Release notes
    • Initial release
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive