I used to maintain my own Emacs config, but I switched to Doom years ago and never looked back. I appreciate the community aspect that lets it be better integrated and tested than I had time to manage on my own.
I use it as my primary environment for everything you mentioned and its excellent. The initial setup is fairly easy too.
And because it's Emacs, if there's something you don't like, you can change it! ๐