How about instead of changing the shell get more out from your existing one.
Starship [0] and fzf [1] will make your life much easier in any shell.
I use fish but they work with bash, zsh and the like.
Why not both? I use starship and fzf with a fish shell.
Fzf is a great productivity boost, especially because it integrates with everything so well. Starship is... nice and flashy, but I don't think it actually improves my productivity a lot. The biggest feature for me is giving me the current git branch, and I used to do it with my fish theme. I mean it's nice to know what version of Python I have currently, it's just not a killer feature.
Starship gives me quite a bit of situational awareness:
- git status, with branch, uncommited stuff, all that
- my python venv I'm in, not just the system python version
- my aws profile active
- etc
Forgot to add zoxide [0] and ripgrep [1].