Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Feature Request] Modern interactive HTML report for genhtml

Open
#469 2 comments 0 reactions 0 assignees View on GitHub

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

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:

  1. Download "low coverage files" as JSON/CSV directly from the report
  2. Drop that file straight into an AI chat or attach it to a prompt
  3. 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

  1. Is there interest in this direction?
  2. Should this be the default output or an opt-in flag (e.g. --modern)?
  3. 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

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from linux-test-project/lcov

All issues in linux-test-project/lcov

Similar issues

More Shell/Bash issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.