What always did, going through awesomewm, stumpwm and xmonad to now sway, was to used whatever of those services were available from the OS. Some I had to launch by hand, but that was a one time change always (some of them across WMs). Nowadays it is even easier, since most of what I needed to launch manually are now user-level service from systemd.
In the end, I am running most of the normal services a GNOME desktop would be running, but without using the GNOME shell, and that has worked very well.
In the end, I am running most of the normal services a GNOME desktop would be running, but without using the GNOME shell, and that has worked very well.