Onion domains are just an encoding of a hash of a public key.  To get a memorable name, you have to find a keypair that hashes to some letters you want.  There is no correlation between any of the characters, so you have to do an exhaustive search to find nice strings.