Make it render the entire HTML before the run, and then update the DOM with results using Javascript. (being able to render the entire thing first might require some cucumber changes).
Make the CSS external to the generated report so it can be styled independently
Using jQuery is ok
Make it able to embed images (Reporter.embed)
Look at the (now bloated) Cucumber (ruby) HTML formatter to see what it needs to do. Look at the features, not the code :-)
The reporter should be similar to (Ruby) Cucumber's built-in HTML formatter, but doesn't have to be identical.
Features:
Relevant discussion threads:
Origin: #42 in cucumber-jvm