{"id":20292995,"url":"https://github.com/gemini-testing/html-reporter","last_synced_at":"2026-03-12T08:48:43.321Z","repository":{"id":21621125,"uuid":"90853055","full_name":"gemini-testing/html-reporter","owner":"gemini-testing","description":"Html reporter for Testplane (ex-hermione)","archived":false,"fork":false,"pushed_at":"2025-04-03T08:37:24.000Z","size":42095,"stargazers_count":48,"open_issues_count":8,"forks_count":44,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-03T09:32:42.370Z","etag":null,"topics":["hermione-plugin","html-report","testplane-plugin"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gemini-testing.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-10T10:41:08.000Z","updated_at":"2025-04-03T08:37:27.000Z","dependencies_parsed_at":"2023-09-22T02:39:35.518Z","dependency_job_id":"8963cddb-ecef-4a9f-89c4-20043a978a4b","html_url":"https://github.com/gemini-testing/html-reporter","commit_stats":{"total_commits":897,"total_committers":55,"mean_commits":16.30909090909091,"dds":0.7190635451505016,"last_synced_commit":"95987896d89b3d76ab692b78fc9493d1138d864b"},"previous_names":[],"tags_count":327,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-testing%2Fhtml-reporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-testing%2Fhtml-reporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-testing%2Fhtml-reporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-testing%2Fhtml-reporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gemini-testing","download_url":"https://codeload.github.com/gemini-testing/html-reporter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247078863,"owners_count":20879952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hermione-plugin","html-report","testplane-plugin"],"created_at":"2024-11-14T15:20:35.691Z","updated_at":"2025-12-26T15:33:39.453Z","avatar_url":"https://github.com/gemini-testing.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cpicture\u003e\n        \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"docs/images/html-reporter-dark.svg\" width=\"300\"\u003e\n        \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"docs/images/html-reporter-light.svg\" width=\"300\"\u003e\n        \u003cimg alt=\"html-reporter logo\" src=\"docs/images/html-reporter-light.svg\" width=\"300\"\u003e\n    \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eSleek and informative UI for your tests 🚀\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://testplane.io\"\u003e\u003cimg src=\"https://img.shields.io/badge/Docs-Website-6c47ff\" alt=\"Total Downloads\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://www.npmjs.com/package/html-reporter\"\u003e\u003cimg src=\"https://img.shields.io/npm/dt/html-reporter.svg\" alt=\"Total Downloads\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/gemini-testing/html-reporter/releases\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/html-reporter.svg\" alt=\"Latest Release\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/gemini-testing/html-reporter/blob/master/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/npm/l/html-reporter.svg\" alt=\"License\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://t.me/testplane\"\u003e\u003cimg src=\"https://img.shields.io/badge/community-chat-blue?logo=telegram\" alt=\"Community Chat\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cimg src=\"docs/images/html-reporter-demo.png\"\u003e\n\n\u003cbr/\u003e\n\n`html-reporter` or, as we also call it, Testplane UI — is an open-source project that can be used to view test results or interact with tools like [Testplane](https://testplane.io), [Playwright](https://playwright.dev/) or [Jest](https://jestjs.io/).\n\n## Features\n\n#### Run and debug your tests\n\nView test steps, replay them and when something goes wrong, find the root cause with ease.\n\n![](docs/images/demo-gifs/run-debug.gif)\n\n#### Superb visual testing capabilities\n\nAccept or undo changes in visual checks with one click. Multiple viewing modes and dedicated visual checks tab will help you analyze the difference.\n\n![](docs/images/demo-gifs/visual-checks.gif)\n\n#### Unified UI for CI and local usage\n\nSomething went wrong in CI? Pull the report and continue troubleshooting locally.\n\n![](docs/images/demo-gifs/ci-and-local.gif)\n\n#### Powerful analytics\n\nSpot flaky tests, slow tests or other issues using \"sort by\" and \"group by\" options.\n\n![](docs/images/demo-gifs/analytics.gif)\n\n#### And so much more\n\nBenefits over regular reporters include:\n\n- **More than a reporter**: it's not static, you can run your tests, update reference images, analyze test runs and more.\n- **Save developer time**: no need to relaunch reports or switch terminals during development — the whole workflow is possible from the UI.\n- **No vendor lock-in**: all data is yours, the UI is open-source and everything is running locally on your machine. There's no cloud.\n- **Optimized to work at scale**: doesn't matter if you have 100 or 100,000+ tests in one report — the UI will work just as smoothly. Built-in support for artifacts uploading on the fly to S3 or other storage.\n- **Multiple data sources**: html-reporter can pull and merge data from any amount of data sources at runtime, or you can use dedicated merge-reports command.\n\n## Demo\n\nOne link is worth a thousand words, so [here it is](https://storage.yandexcloud.net/testplane-ui-demo/v10.16.3/new-ui.html#/suites/testplane%20New%20UI%20Suites%20page%20Expand%2Fcollapse%20suites%20tree%20button%20should%20offer%20to%20expand%20when%20collapsed%20using%20button%20chrome) — see all the features for yourself.\n\n## Getting started\n\n\u003e [!IMPORTANT]\n\u003e Currently `html-reporter` needs Node v18 or higher and works with Testplane, Playwright and Jest.\n\u003e\n\u003e Note that html-reporter is tool-agnostic at its core, so adding support for a new tool is a matter of implementing new data adapters. If you have a specific tool in mind, [raise an issue](https://github.com/gemini-testing/html-reporter/issues) — let's discuss what can be done.\n\n1. Install `html-reporter` with your favorite package manager:\n\n    ```shell\n    npm i -D html-reporter\n    ```\n\n2. Turn it on in your tool's config:\n\n    \u003cdetails\u003e\n        \u003csummary\u003eTestplane\u003c/summary\u003e\n\n        // .testplane.config.ts\n        export = {\n            // ...\n            plugins: {\n                'html-reporter/testplane': {\n                    enabled: true,\n                    path: 'html-report',\n                },\n            },\n        };\n\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n        \u003csummary\u003ePlaywright\u003c/summary\u003e\n\n        // playwright.config.ts\n        export default defineConfig({\n            // ...\n            reporter: [\n                ['html-reporter/playwright', {\n                    enabled: true,\n                    defaultView: 'failed',\n                    path: 'html-report',\n                }],\n            ],\n        });\n\n    \u003c/details\u003e\n    \u003cdetails\u003e\n        \u003csummary\u003eJest\u003c/summary\u003e\n\n        const config = {\n            // ...\n            reporters: [\n                ['html-reporter/jest', {\n                    path: 'html-report',\n                }]\n            ],\n        };\n\n    \u003c/details\u003e\n\n3. Run your tests and see the report:\n\n    ```shell\n    npm test\n\n    npx serve html-report\n    ```\n\n4. Try UI mode to run your tests from the UI:\n\n    ```shell\n    npx html-reporter gui\n    ```\n\n    Note: UI mode is available only for Testplane and Playwright. To use with Playwright, add `--tool playwright`.\n\n## Docs\n\nSee full documentation in various languages here:\n* [English](https://testplane.io/docs/v8/html-reporter/overview/)\n* [Русский](https://testplane.io/ru/docs/v8/html-reporter/overview/)\n\n## Contributing\n\nOur mission with this repository is to make the development process open, while continuing to improve upon its features, performance and ease of use. We hope other organizations find value in our project and benefit from our work.\n\nWe welcome and appreciate community contributions. To ensure our efforts are in sync, we recommend to raise an issue or leave a comment beforehand.\n\nVisit our [contributing guide](CONTRIBUTING.md) to understand more about our development process and how to get involved.\n\n## License\n\nTestplane is [MIT licensed](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemini-testing%2Fhtml-reporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgemini-testing%2Fhtml-reporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemini-testing%2Fhtml-reporter/lists"}