[Feature Request] Modern interactive HTML report for genhtml
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Quiet
- Tech stack
- perl
- Domain
- data-visualization, frontend
Research direction
Start by reviewing genhtml's current HTML report and the proposed dashboard requirements. Before implementation, maintainers need to decide whether this is the default output or an opt-in mode and how JavaScript dependencies may be bundled. Done would mean an agreed scope and a standalone interactive report meeting the selected requirements.
Written by the indexing model from the issue text.
Description
Summary
The current genhtml output produces a plain HTML 4.01 table-based report.
I'd like to propose replacing or offering an alternative modern, interactive
dashboard as the default output.
Current Problem
- The existing report is a static HTML 4.01 table with no interactivity
- No search, filtering, or sorting of files
- No visual charts showing coverage distribution
- Hard to navigate in large projects with hundreds of files
Proposed Solution
A modern standalone HTML dashboard with:
- Dark/light theme
- Summary stat cards (total files, covered lines, coverage %)
- Charts: coverage distribution (donut), per-module breakdown (bar)
- Searchable, sortable, filterable file table
- Filter pills: zero coverage / <50% / <80% / all
- Coverage mini-bars per file row
- Fully standalone — data embedded in HTML, no server needed
- CSV / JSON export of filtered results
I have already built a working version of this dashboard for a Flutter project
Value for AI-Assisted Development
One underappreciated use case for structured coverage output is feeding it
directly into AI coding assistants (Claude, Copilot, Cursor, etc.).
Currently developers have to manually explain to an AI which files need work.
With downloadable outputs from this dashboard, a developer can:
- Download "low coverage files" as JSON/CSV directly from the report
- Drop that file straight into an AI chat or attach it to a prompt
- Let the AI generate missing tests or improve coverage — with full context
Example:
"Here is my coverage report export. Write tests for all files below 50% coverage."
This makes genhtml output a first-class artifact in modern AI-assisted
development workflows — not just a passive reporting tool. The download button
is a small addition with outsized impact on how developers actually work today.
Questions for Maintainers
- Is there interest in this direction?
- Should this be the default output or an opt-in flag (e.g.
--modern)? - Are there constraints on bundling external JS libraries (e.g. Chart.js)?
If so, I can use the Canvas API directly or inline a minified bundle.
Happy to submit a PR once direction is agreed.
- Dominant language
- Shell
- Stars
- 1.1k
- Forks
- 272
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 13
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from linux-test-project/lcov
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
linux-test-project/lcov#546 · 4 comments ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
linux-test-project/lcov#557 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 57/100
linux-test-project/lcov#555 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
linux-test-project/lcov#554 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 63/100
linux-test-project/lcov#536 · 4 comments ·
Maintainers usually reply within 1 day
All issues in linux-test-project/lcov
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
ophub/amlogic-s9xxx-armbian#3752 ·
Maintainers usually reply within 1 day
-
prio:low type:chore
Difficulty 1/5 Under an hour Newbie friendliness 82/100
davidsneighbour/dotfiles#602 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 79/100
Maintainers usually reply within 1 day
-
update-request
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
msys2/MINGW-packages#33004 ·
Maintainers usually reply within 1 day
-
bug small tooling
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day