SkillAgentSearch skills...

Grand

Grand is a Go random string generator

Install / Use

/learn @ernsheong/Grand
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Grand

GoDoc

Grand is a Go random string generator.

Installation

go get github.com/ernsheong/grand

Usage

  1. IMPORTANT. Seed rand first to ensure you don't get the same string on every code run (initialize):

    rand.Seed(time.Now().UTC().UnixNano())
    

    or

    rand.Seed(time.Now().Unix())
    
  2. Generate your random string, given a length parameter n:

    grand.GenerateRandomString(32)
    // returns "qzrWbaoLTVpQoottZyPFfNOoMioXHRuF"
    
  3. Generate random string from other character sets:

    gen := grand.NewGenerator(grand.CharSetBase62)
    gen.GenerateRandomString(20)
    // returns "q3rWba2LTVpQ4ottZyPv"
    

Concurrency

From the math/rand docs:

The default Source is safe for concurrent use by multiple goroutines

grand uses the default Source, and hence is safe to be called from multiple goroutines, at a slight performance penalty. See https://stackoverflow.com/a/31832326/1161743 for details.

Credits

I claim no credit for the generation logic. It's originally from user icza in https://stackoverflow.com/a/31832326/1161743.

Related Skills

View on GitHub
GitHub Stars11
CategoryDevelopment
Updated10mo ago
Forks1

Languages

Go

Security Score

87/100

Audited on May 13, 2025

No findings