Web: xmpp.js or converse.js (the latter is a full client, but can be embedded "headless" with any custom UI you like)
Python: slixmpp
Go: Mellium or go-xmpp
Rust: xmpp-rs
Java: Smack
Any platforms I missed?
There is also the Snikket SDK in development, which is still in its early stages, and designed for XMPP IM apps specifically (whereas most of the libraries listed above are generic and can be turned to any purpose). The SDK is still lacking a few big things like E2EE, but already has calls and some other stuff.
Edit: I should add that building a good messaging app is a lot of work (ask anyone who has tried it, regardless of protocol). If that's what you're doing, consider contributing to or at least starting with an existing project.
Python: slixmpp
Go: Mellium or go-xmpp
Rust: xmpp-rs
Java: Smack
Any platforms I missed?
There is also the Snikket SDK in development, which is still in its early stages, and designed for XMPP IM apps specifically (whereas most of the libraries listed above are generic and can be turned to any purpose). The SDK is still lacking a few big things like E2EE, but already has calls and some other stuff.
Edit: I should add that building a good messaging app is a lot of work (ask anyone who has tried it, regardless of protocol). If that's what you're doing, consider contributing to or at least starting with an existing project.
https://xmpp.org/software/