In the past I’ve used Spectacle App1, for managing windows on MacOS.
As of today, I have shifted to using Hammerspoon Shiftit a configuration for Hammerspoon which gives me same functionality without having to use yet another app (I have Hammerspoon installed; Hammerspoon is a powerful automation tool which can be programmed using the Lua programming language).
See also: Window Managers