I've been learning go and this is my first CLI app. There's definitely some YAGNI in this..<i>cough</i> emoji <i>cough</i>..but supporting unicode/emoji led me to expressing the charsets as an interface instead of as a string or array of characters, which are so nice and so lightweight in go.<p>brew install leighmcculloch/randstr/randstr<p>or<p>go install github.com/leighmcculloch/randstr/cmd/randstr<p>Feedback welcome, especially on project structure and best ways to distribute go CLIs.