I've used XMonad for >10 years. I love it and hate it at the same time. I love XMonad layouts! I hate that I have to write Haskell to configure it. I no longer have the patience to relearn the minimal amount of Haskell necessary to make config changes, so I've frozen my config and not touched it for the last 4 years.
But its really hard to switch off it! I've tried i3 and really like that it has a network based API, but not having automatic layouts is really a deal breaker for me. It seems like you should be able to port the XMonad layouts to i3, but in reality their models are different enough that I doubt you could ever make the same layouts in i3 and have it work exactly as it does in XMonad.
> but not having automatic layouts is really a deal breaker for me
there is layout saving on i3 now and it works pretty well.
basically you build a layout on a workspace, dump it to a file, adjust window selectors so that they swallow the correct windows, and then you can apply it a piacere.
i3 has manual tiling by choice and it isn't necessary to port automatic tiling to i3 itself. You can make a service that utilizes i3's IPC that does that. And of course people have done so[1-3].
I'm aware of i3's IPC and those tools are not even close to getting back to a normal XMonad workflow. Again, I think the layout models are different enough between the two projects that it would not be possible to build XMonad's auto layouts in i3.
But its really hard to switch off it! I've tried i3 and really like that it has a network based API, but not having automatic layouts is really a deal breaker for me. It seems like you should be able to port the XMonad layouts to i3, but in reality their models are different enough that I doubt you could ever make the same layouts in i3 and have it work exactly as it does in XMonad.