I tend to use DigitalOcean for a lot of my personal tech projects. Their no-nonsense pricing and the ease of use of their web console make them a lot easier to work with than any of the "Big Three" (AWS, GCP, Azure). And though their console is super-handy, there are certain post-provisioning steps I typically perform on new Droplets (what DO calls their virtual compute platform). So at some point, I decided it was high time to figure out how to put all those steps into some sort of configuration management. I settled on Ansible because, if we're being honest, it's the best combination of what I know, and what I like.
All that said, I've put together an Ansible playbook (I even gave it a name, "Stratiform"...don't ask why) which I'm pretty happy with, and you can find it on my GitHub page. It's pretty comprehensive and installs a lot of my recommended command-line tools, but it's still a work in progress. That said if you see things you think I could be doing better, feel free to submit a pull request!