Would be awesome to have a proper binding to steamworks.
As luck would have it, this _already_ exists, contributed by @code-disaster ! :)
Look at the https://www.lwjgl.org/download page, hit any of the three versions and observe that "steamworks4j" can be selected in the "Addons" section.
Note that though there is a "flat C API" for Steamworks, with header files which look like they are auto-generated, all Valve documentation and code samples target the C++ API. I didn't work with the C API myself, but from what I gathered from the developer forums, it doesn't seem to be easy to handle.
Now the C++ API itself is heavy on asynchronous callbacks, which doesn't fit very well with the LWJGL model. I could see some benefits of utilising LWJGL library functions though, like MemoryStack and SharedLibraryLoader. That's something I want to look into soon'ish.
Most helpful comment
Note that though there is a "flat C API" for Steamworks, with header files which look like they are auto-generated, all Valve documentation and code samples target the C++ API. I didn't work with the C API myself, but from what I gathered from the developer forums, it doesn't seem to be easy to handle.
Now the C++ API itself is heavy on asynchronous callbacks, which doesn't fit very well with the LWJGL model. I could see some benefits of utilising LWJGL library functions though, like MemoryStack and SharedLibraryLoader. That's something I want to look into soon'ish.