Utilities
Turn JSON findings into a shareable HTML table
Convert JSON into an HTML table for readable reports.
overview
What json2html does
json2html reads a --json file and emits an HTML table so scanner or prober results are readable in a browser without a front-end app.
Enable --encode when values contain escaped markup that should render as text. Pass --attributes such as id or class so the table picks up your stylesheet.
Trickest provides json2html as a managed Utilities node at the report stage. JSON file in, FILE and FOLDER out. Shape rows with jq first; prefer generate-yaml-report for a generic report assembler.
source github.com/softvar/json2html
use cases
Where json2html fits
Render findings as a readable page
Convert the JSON output of a scanner into an HTML table so the results read as a browsable report instead of raw records.
Build the report stage of a pipeline
Drop json2html at the end of a workflow so structured output from httpx or nuclei becomes a shareable HTML artifact automatically.
Style the output table
Pass table attributes such as an id and class so the generated table picks up your stylesheet for a cleaner presentation.
Safely render escaped markup
Enable HTML encoding so escaped markup inside the JSON renders as text in the table rather than breaking the page.
reference
json2html inputs and flags
| Name | Type | Flag | Description |
|---|---|---|---|
| json | FILE | --json | JSON input file |
| encode | BOOLEAN | --encode | Encode escaped html code |
| attributes | STRING | --attributes | List of space-separated table attributes to apply to the generated table (example: 'id=foo class=bar') |
Showing key inputs. json2html exposes 3 inputs in total.
example
Run json2html
# json2html: render findings.json as an HTML tablejson2html --json findings.json > report.html<table><tr><th>host</th><th>status</th></tr><tr><td>www.example.com</td><td>200</td></tr><tr><td>api.example.com</td><td>401</td></tr><tr><td>dev.example.com</td><td>200</td></tr></table>guidance
Choosing json2html
Use json2html at the reporting end of a workflow when you need a browsable HTML table from structured JSON. It formats data; it does not scan or fetch. Prefer generate-yaml-report for a generic report assembler, or jq when you still need to reshape the data.
generate-yaml-report
Builds a report from workflow output. json2html targets an HTML table from JSON specifically.
gron
Flattens JSON into greppable lines. Use gron to filter, json2html to present.
jq
Transforms and queries JSON. Pair it before json2html to shape the data first.
faq
json2html questions
related
More Utilities tools
cewl
Spider a URL and return a wordlist for password crackers.
dnsgen
Wordlist and mined-word subdomain permutation.
pup
CSS selectors over HTML, the jq counterpart for markup.
unfurl
Extract chosen URL parts from stdin into clean line lists.
whisper
Speech to txt, vtt, srt, and json from an audio file or folder.
youtube-transcript
Public caption tracks to transcript.txt and results.jsonl.
Run json2html yourself
A JSON findings file feeds json2html, which renders it as an HTML table and writes the report file for sharing.
Facts on this page come from the live Trickest tool library.