Fuzz coverage viewer
Load an Echidna or Medusa coverage file and see which lines were never hit.
Runs in your browser
Coverage report
Echidna or Medusa JSON, a Foundry coverage array, or a plain LCOV file. Nothing leaves your browser.
Accepts .json, .lcov and .info.
Uploading a file fills this in too, so you can check what was read.
No coverage loaded
Load a report and the first thing you see is what the fuzzer never reached — the functions it never entered and the files with the most unhit lines.
Supported formats
JSON is tried first; anything else is read as LCOV.
- Echidna: JSON coverage output from
--format json - Medusa: JSON coverage report
- Foundry: Coverage JSON from
forge coverage --report json - LCOV: Standard LCOV format (.info files)
Echidna JSON shape
{
"coverage": {
"src/MyContract.sol": {
"lines": { "10": 5, "11": 5, "12": 0, "15": 3, "16": 3, "20": 0 },
"functions": { "deposit": 5, "withdraw": 3, "emergencyWithdraw": 0 }
},
"src/Token.sol": {
"lines": { "5": 10, "6": 10, "7": 8 },
"functions": { "transfer": 10, "approve": 8 }
}
}
}