The thing about ZSH that made me jump ship was that even though you can customize it like fish (with Oh My ZSH plugins) ZSH was always slow or didn't display some things correctly. It was frustrating having to wait a few seconds for a command or having things just not work out correctly.
Fish, on the other hand, is fast and has a lot of quality of life features like typing part of a command and then serach with the up key. I didn't even install any plugins (I like to Fisher[1]).
Also, Fish has gotten me more and more into shell scripting. The docs for Fish are very clear and easy to navigate. I love how you can have custom scripts on the .config folder or abbreviations[2], which I think are superior to aliases since they expand into the command you're calling.
I was using it as the default shell for my user until recently and it was fine, but I have gone back to Bash as my default shell and just set my terminal emulator to start into Fish on startup. I didn't have any incident. I just wanted to avoid anything unexpected further down the line.
[1]: https://github.com/jorgebucaran/fisher
[2]: https://fishshell.com/docs/current/interactive.html#abbrevia...
With frameworks like oh-my-zsh I'm always worried about supply chain attacks.
I do use https://starship.rs (which is also a package away), and I think things like fisher https://github.com/jorgebucaran/fisher are useful when you need a specific fish script.
I also don't really like writing zsh scripts because I always run them through https://www.shellcheck.net which works best with posix sh/bash