🔢🔡 crypto-secure random ids generation lib for Go
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
.travis.yml
LICENSE
README.md
randid.go
randid_test.go

README.md

randid

GoDoc Build Status Coverage Status

generate (crypto-secure) random (alphanumeric string) ids - in Go

FEATURES:

  • secure 🔒 crypto random ids thanks to crypto/rand
  • fast ⚡️
  • both fixed and arbitrary long generation methods
  • tested
  • dependency-less

USAGE:

download the package

go get github.com/damdo/randid

import and use the package

import "github.com/damdo/randid"

func foo(){

    // generate a default len (32 char) id
    your32CharLongID, err := randid.ID()
    // -> 26e99c11f0a31ec57924c8e2a0712cd3

    // or
    desiredLen := 64
    your64CharLongID, err := randid.SizedID(desiredLen)
    // -> 6cc77090ff64c232613574bb562510f78d88a84e8351f3a68ac1caa902750bb7


    // change randid default len
    // every id generated from now on with .ID() will be 33 char long
    randid.DefaultLen = 33

    your33CharLongID, err := randid.ID()
    // -> 091015d5146b6d2e3f77ff50d805cee50

}

CREDITS:

Credits goes to https://github.com/moby/moby/blob/master/pkg/stringid
upon which this mini package is heavily based.

LICENSE:

The MIT License (MIT) - see LICENSE.md for more details