I'm old school, I use Bash and do the basic " [user@hostname working-directory]$ " but there's a newline before the first bracket so there's always a line break and an indent after STDOUT so I can tell where the command output ends if it's huge. I also tend to colorize it a bit.
I've tried ZSH and I like it, but as a Linux System Engineering overseeing thousands of servers, they all use Bash, so that's what I've stuck with as well.