Glad to discover fd. I've always struggled with find syntax. It's easy enough, but always kind of fiddly IME.
Bash doesn't really have any of this, so if you're a bash user you're out of luck. Don't know about fish.
# fs 'foo' will find files/dirs with 'foo' anywhere in the name irrespective of case
fs() { find -iname '*'"$1"'*' ; }