As a slight aside, how did you choose i3 over the other tiling window managers?
I chose xmonad at one time, but it was more or less by chance --- someone else used it that I knew, and so I tried it. But I haven't actually compared any.
I was a one-time Xmonad user, but switched to i3 recently. The enormous complexity of configuring Xmonad is what got me to switch, honestly. Perhaps if I A) needed enormous configurability or B) knew Haskell well I would have stuck around, but i3's config is much simpler to manage. i3 is also slightly prettier, but that's orthagonal :)
I've read the name a few times and people seemed to be happy with it, so I gave it a try. I liked it immediately, not least because of the simple but powerful customization. To be honest, I haven't tried any other TWMs yet, but I will soon.
It's a tiling window manager, as minimal as ratpoison in interface but fully configurable and hackable on runtime, to the point of rebuilding parts of the system as it's running. It's the best WM experience I had since the old Enlightenment and I'm now using it full time. I even wrote some posts about it: https://klibert.pl/#stumpwm-better-modelinehttps://klibert.pl/#stumpwm
Ah, forgot to mention: it's in Common Lisp, so YMMV by a lot :)
I used to use ratpoison - I very much like its mode of having a tree of key bindings hung off a single root, so that there's nothing I can't send to my applications. The fact that it largely works like screen/tmux is also quite nice.
More recently I had occasion to get xmonad working sufficiently like ratpoison to be usable. I expect my setup will grow in interesting ways in the long term, but it's still fairly minimal.
I chose xmonad at one time, but it was more or less by chance --- someone else used it that I knew, and so I tried it. But I haven't actually compared any.