I use Amethyst (like xmonad), spaces and set the dock to auto hide. Keyboard shortcuts for switching layouts and moving windows. Three finger swipe to the left or right to switch spaces or ctrl 1-4. I’m pretty happy with this setup.
I’ve used Amethyst twice before giving up and just going back to manually doing all my adjustments. I found it extremely wonky. For example, even after a user specifies their preferences, it will still auto snap after you make your own custom adjustments. Custom adjustments should always override the default snap-to-preset rules.
https://github.com/ianyh/Amethyst