Skip to content

FEATURE: Valuable Features #42

@rodneyosodo

Description

@rodneyosodo

Is there an existing feature request for this?

  • I have searched the existing feature requests

Is your feature request related to a problem? Please describe.

No problem

Describe the solution that you would like.

  1. Case Transformation Options
WithUpperCase()      // JOHN-SMITH
WithLowerCase()      // john-smith
WithTitleCase()      // John-Smith (default)
WithCamelCase()      // johnSmith
WithSnakeCase()      // john_smith
WithKebabCase()      // john-smith
  1. Name Format Options
WithFormat(FirstNameOnly)     // John
WithFormat(LastNameOnly)      // Smith
WithFormat(LastNameFirst)     // Smith-John
WithFormat(InitialsOnly)      // J.S.
WithFormat(MiddleName)        // John Michael Smith
  1. Uniqueness Guarantees
GenerateUnique(count int, options...)  // Guarantees no duplicates
WithUniqueConstraint()                 // Tracks generated names
  1. Custom Name Lists
WithCustomFirstNames([]string{"Alice", "Bob"})
WithCustomLastNames([]string{"Cooper", "Davis"})
  1. Numeric Options
WithRandomNumber(digits int)    // John-Smith-1234
WithTimestamp()                  // John-Smith-1703260800
WithUUID()                       // John-Smith-uuid
  1. Validation & Constraints
WithMaxLength(int)       // Truncate or regenerate if too long
WithMinLength(int)       // Ensure minimum length
WithAllowedChars(string) // Filter to specific character set
  1. Email Generation
GenerateEmail(domain string)  // john.smith@example.com
WithEmailFormat(DotSeparated) // john.smith@...
WithEmailFormat(Underscore)   // john_smith@...
WithEmailFormat(NumberSuffix) // johnsmith123@...
  1. Username Generation
GenerateUsername()           // johnsmith42
WithUsernameFormat(format)   // Customizable patterns
  1. Seed Control
WithSeed(int64)  // Reproducible name generation

Describe alternatives you have considered.

You can build each of them

Anything else?

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions