I usually heavily tweak the settings of the applications I use, make my own custom themes etc, but the defaults of fish are so good that I hardly changed anything.
I only installed 3 plugins (z,fzf,and virtualfish) and that's it, it's super productive.
Completion from history, persistently setting enviroment variables, defining functions, the syntax, everything is much more ergonomic and sane than in bash.
I'm sure you can tweak zsh or even bash to achieve something similar, but why bother?
Also, i don't mind the incompatibility with bash: the fish language is much more sane, and you can easily use bash if needed.