{"repo":"OlegSotnikov/jc-rs","free":true,"listed":false,"github":"https://github.com/OlegSotnikov/jc-rs","clone":"git clone https://github.com/OlegSotnikov/jc-rs.git","description":"237 parsers that turn command output, file formats and strings into JSON, from one static Rust binary with no runtime to install. Verified against the full reference fixture corpus on every commit.","language":"Rust","stars":113,"topics":["cli","command-line","devops","jq","json","parser","rust","sysadmin"],"license":null,"category":"cli-tools","readme_excerpt":"jc-rs Convert the output of command-line tools, file formats and strings to JSON, from a single static binary. Compatibility with jc: 100% (934 of 934 oracle-valid fixture pairs). The code this started from measured 80.0%. The number comes from make differential and is published whatever it says. See tests/differential/REPORT.md. CI fails below 100%, so it cannot quietly drift. --- Why this project exists jc is the standard for this job and the reason the category exists. It decided which commands are worth parsing and what the JSON for each should look like. Its trade-off here is whole-process startup: 109 ms in the published run versus 4 ms for jc-rs, plus a runtime dependency that does not fit a scratch container or many embedded systems. jc-rs is that tool as a single static binary: 1. A compatibility number you can check. Every discoverable fixture is evaluated: qualifying pairs enter the denominator, exclusions stay visible, and CI fails below 100%. jc-rs invents no schemas: jc is the authority, and where the two disagree jc-rs has the bug. 2. Streaming that actually streams. jc emits NDJSON line-by-line as input arrives, and so does jc-rs: tail -f access.log jc-rs -u --clf-s prints each record as the log grows, rather than one array at EOF. 3. Distribution. Static binaries for five targets, five crates, npm, brew and a scratch Docker image. How the compatibility number is produced tests/differential/validate.py walks every .json fixture in the pinned jc source (submodu","default_branch":null,"files":null,"tree":[],"storefront":"/r/OlegSotnikov","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/OlegSotnikov/jc-rs/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}