I have started [RFC #7337](https://github.com/nim-lang/Nim/issues/7337) to discuss a common standard on how Nim and its ecosystem should interface with binary data.
This was started for cryptographic and hashing needs but it seems to be a much broader issue than that: graphics, networking, random functions, compression & codecs, streaming and probably lot of other domains. Currently, just in crypto libraries we use `array[N, char]`, `array[N, uint8]`, `array[bits div 8, uint8]` wrapped in an object[bits: static[int]], `array[N, byte]`, `distinct array[N, uint32]`, `string`, `ptr cuchar + length`. You're welcome to add your opinions and proposals **on Github directly**. You can share in this thread either a domain ("I'm writing a video editor and it's a pain to deal with inconsistent ptr uint8 + len, string buffers ...") or a library that is concerned by such standardization so that we know how many people we will _annoy_ ... _*cough_ * benefit.