Video demo: https://youtu.be/Ah-Pya-_ir8
General info
This mod for both Fabric and Forge is an add-on to Roughly Enough Items, providing a new category - villager trades. Every vanilla trade is guaranteed to be listed.
RET is fully client-side, installing it on a server is useless (might just crash it).
Some trades change item nbt (enchanting, dying, map filling). In such cases RET surrounds the resulting item's name with * signs, like *Diamond Boots*.
Pigling bartering is not supported because it relies on server-side data.
Mod compability
The problem with villager trades is that modders can easily define their own types, making it impossible for RET to fetch the data. In such cases, it rolls a few random "offers" (basically simulates what happens when you click on a villager). The resulting data is not accurate and not fullfilling, but it is still better than nothing. You can understand that RNG happened by finding and entry like this:
Dependencies:
Roughly Enough Items (https://modrinth.com/mod/roughly-enough-items)
Fabric Language Kotlin (https://modrinth.com/mod/fabric-language-kotlin) or Kotlin For Forge https://modrinth.com/mod/kotlin-for-forge)