Thanks for the review, @codingdefined.
How it is different than Ecto.Query.API, because someone can directly do fragment("?->>? ILIKE ?", p.map, "key_name", ^some_value) for JSON/JSONB?
Yep, that's exactly the point of this library. I've noticed that my codebase is full of repeated fragments for JSONB handling so I've decided to dry it out and extract the functionality to a dedicated package.