It’s not really that difficult to use Swing controls in Processing in my opinion, but will agree that it’s not for everyone. It’s true that you have to do your own event handling and draw() no longer works as expected. Other than that with Swing you can get a wide range of high quality controls designed and maintained by a large number of coders. With libraries you are usually at the mercy of a single author and whatever that individual wants you to have. Furthermore library writers sometimes grow weary of dedicating their life to maintaining their work over time. Nonetheless Processing users are currently lucky to have a couple of good options which are fairly easy to use and less work for the average user. You can see a few Swing components in this old thread: https://discourse.processing.org/t/swing-components-in-default-processingwindow/35483