Protractor Jasmine2 HTML Reporter
An NPM package for generating beautiful HTML reports from Protractor and Jasmine 2 E2E tests, downloaded 9 million times by teams worldwide.
The Gap
In 2018, my team was running E2E tests with Protractor and Jasmine 2 on a complex Angular app. We needed good test reports for our CI/CD pipeline, but nothing existed for this specific stack. Everything was either too basic, incompatible, or lacked screenshot capabilities.
I spent a weekend building what we needed and published it to NPM. That weekend project has now been downloaded 9 million times.
What It Does
The package generates clean HTML reports from your test runs—color-coded results, hierarchical organization, embedded screenshots on failures, and extensive configuration options. Teams use it in Jenkins, GitLab CI, GitHub Actions, and Azure DevOps to visualize test results after every build.
The key was making it highly configurable. Different teams have different needs: some want to see passed tests, others want to hide them. Some need screenshots for everything, others only on failures. The package adapts to all these scenarios through simple configuration.
Why It Succeeded
It solved a real problem. When you’re experiencing a pain point, thousands of others probably are too. Publishing to NPM made the solution accessible to everyone.
Configuration flexibility. Teams could adapt it to their specific workflows without forking or modifying the code.
Good documentation. Clear examples and configuration options made it easy to get started.
The Lifecycle
The package mirrors the testing ecosystem’s evolution. It peaked during Protractor’s dominance, maintains steady usage as legacy projects continue, and will gradually decline as teams migrate to Cypress and Playwright.
I’m not actively maintaining it anymore—Protractor itself is deprecated—but it still works reliably for the teams that need it. Sometimes the best thing you can do for an open-source project is let it be stable and complete rather than constantly changing it.
What I Learned
Open source has unexpected reach. A weekend project reached 9 million downloads and helped teams worldwide.
Solve specific problems well. The package does one thing—generate HTML reports—and does it thoroughly.
Documentation drives adoption. The time spent writing clear docs paid off in widespread usage.
Technology shifts are inevitable. The package’s lifecycle teaches humility—even successful tools eventually become legacy.
Install via NPM: npm install protractor-jasmine2-html-reporter --save-dev
Key Metrics
Weekly Downloads
50K
Total Downloads
9M+
Active Period
2018-Present