Note: This post is a bit older. Since macOS Sequoia (15) there is built-in window tiling that covers the basics (drag a window to a screen edge to snap it). For more elaborate splits, your own shortcuts and more layout options, Rectangle is still a good pick. If you use Raycast, the Window Management extension covers similar ground. For me, Rectangle remains the go-to because it’s small, focused and keyboard-driven.
Apple built a great operating system with macOS. Not perfect though. Window management was clunky for years.
On Microsoft Windows you have „Snap to": drag a window to the right edge and it snaps to the right half of the screen. That’s exactly what Rectangle delivers on the Mac. Open source, everything is on GitHub.
Snap Area
Like on Windows, you can split windows with the mouse.

Safari dragged to the right edge of the screen.
Rectangle shows a preview of the new position and size while you drag. One advantage over other tools: not only the usual four splits (top, right, bottom, left halves), but also thirds (left, center, right) and quarters at the corners.
Keyboard is King
Rectangle really shines once you drive it from the keyboard. Countless ways to move and arrange windows.
The default shortcuts didn’t click for me, so I built my own scheme.

My Rectangle shortcuts. Screenshot from a German environment – the idea of mapping everything onto the cursor keys should still be clear.
I focused on getting most things done via the cursor keys. Try the settings out for yourself, you can always revert to the defaults.
Installation
I installed Rectangle via Homebrew:
brew install --cask rectangle
If you haven’t used Homebrew yet: worth it for quickly installing and managing tools on macOS. Alternatively, grab the app directly from the release page on GitHub.