JMESPath LibrariesΒΆ
The JMESPath specification is implemented in varioues languages. Each list below shows JMESPath libraries as well as the compliance level. The compliance level is based on which compliance tests the library can pass.
Note
GorillaStack maintains a fork in JavaScript which is divergent from the original specification. Below, we have provided links to the GorillaStack versions where approriate or the original implementations.
Language | Name | Compliance Level | Variant |
---|---|---|---|
Python | jmespath.py | Fully compliant | Original |
PHP | jmespath.php | Fully compliant | Original |
Javascript | jmespath.js | Fully compliant w/ GorillaStack additions | GorillaStack |
Ruby | jmespath.rb | Fully compliant | Original |
Lua | jmespath.lua | Fully compliant | Original |
Go | go-jmespath | Fully compliant | Original |
Java | jmespath-java | Fully compliant | Original |
Rust | jmespath.rs | Fully compliant | Original |
DotNet | jmespath.net | Fully compliant | Original |
In addition to the JMESPath libraries above, there are a number of miscellaneous JMESPath tools.
Tool | Description |
---|---|
jmespath.terminal | Provides a JMESPath interactive terminal that you can use to evaluate JMESpath expressions as you type. The README in the github repo shows GIFs of jpterm in action. |
jp | Provides a JMESPath command line interface called jp. This cross platform tool accepts JSON data through stdin or input files, and prints the result of evaluating the JMESPath expression to stdout. This is useful if you’re writing shell scripts that need to manipulate JSON data. |