I've had good luck with the Anker Soundcore Motion +, very decent sound for it's size, has a nice app, and is very portable and waterproof.
https://www.amazon.com/Anker-Soundcore-Bluetooth-Customizable-Waterproof/dp/B07P39MLKH
Seconded.. Unless you need a battery...
Ultimate Ears Wonderboom 2: https://www.nytimes.com/wirecutter/...-speaker/#our-pick-ultimate-ears-wonderboom-2
There's a couple other suggestions in that article that are around $100 as well. Obviously they tend to focus on "portable" also meaning "outdoor"; not sure if that's a priority for you or not.