Roughly Enough Trades
REI category showing villager trades
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
Roughly Enough Trades

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)