{"id":30372804,"url":"https://github.com/dennisbergevin/cypress-plugin-grep-boxes","last_synced_at":"2026-03-14T22:25:12.274Z","repository":{"id":246071187,"uuid":"809920862","full_name":"dennisbergevin/cypress-plugin-grep-boxes","owner":"dennisbergevin","description":"A companion Cypress plugin for `cy-grep` that allows user to run specific test(s) in `open` mode.","archived":false,"fork":false,"pushed_at":"2026-03-04T15:48:26.000Z","size":1954,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-04T22:33:55.052Z","etag":null,"topics":["cypress","cypress-plugin","testing","testing-tools"],"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/dennisbergevin.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-06-03T17:52:29.000Z","updated_at":"2026-03-04T15:41:07.000Z","dependencies_parsed_at":"2024-06-25T18:13:25.811Z","dependency_job_id":"f47f3e90-d449-4969-8ff6-03b16dd59180","html_url":"https://github.com/dennisbergevin/cypress-plugin-grep-boxes","commit_stats":null,"previous_names":["dennisbergevin/cypress-plugin-grep-boxes"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/dennisbergevin/cypress-plugin-grep-boxes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennisbergevin%2Fcypress-plugin-grep-boxes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennisbergevin%2Fcypress-plugin-grep-boxes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennisbergevin%2Fcypress-plugin-grep-boxes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennisbergevin%2Fcypress-plugin-grep-boxes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dennisbergevin","download_url":"https://codeload.github.com/dennisbergevin/cypress-plugin-grep-boxes/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennisbergevin%2Fcypress-plugin-grep-boxes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30515611,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-14T18:06:04.599Z","status":"ssl_error","status_checked_at":"2026-03-14T17:55:05.137Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cypress","cypress-plugin","testing","testing-tools"],"created_at":"2025-08-20T07:25:54.838Z","updated_at":"2026-03-14T22:25:12.262Z","avatar_url":"https://github.com/dennisbergevin.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch2 align=center\u003eCypress plugin grep-boxes\u003c/h2\u003e\n\u003cp align=\"center\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\nA companion Cypress plugin for \u003ccode\u003ecy-grep\u003c/code\u003e that allows user to run specific test(s) in \u003ccode\u003eopen\u003c/code\u003e mode.\n\u003c/p\u003e\n\n![cy-grep-boxes-demo](https://github.com/user-attachments/assets/5845963d-32a0-49a6-99be-3b81ca7d6f29)\n\n## Features\n\n- ✅ A new UI test selection within `cypress open` to filter and run only selected tests in a given spec\n- 🚩 _NEW_ in v2.0.0: Tags are now displayed and can be clicked to filter by respective tag in `cypress open`\n\n#### Table of Contents\n\n- [Installation](#-installation)\n- [Setup](#-setup)\n- [Open mode](#-open-mode)\n  - [Using cypress-plugin-filter-runnables](#using-cypress-plugin-filter-runnables)\n  - [Use Required Test Tags Instead Of Skipping Tests](#use-required-test-tags-instead-of-skipping-tests)\n- [hideSpecTags](#hideSpecTags)\n- [disableInitialAutoRun](#disableInitialAutoRun)\n- [Contributions](#contributions)\n\n---\n\n## 📦 Installation\n\n1. Install the following packages:\n\n\u003e [!NOTE]\n\u003e To support `cypress-plugin-grep-boxes` displaying test tags in the Cypress Test Runner, `@bahmutov/cy-grep` must be on version \u003e= 2.1.0\n\n```sh\nnpm install --save-dev @bahmutov/cy-grep # Dependent package for the plugin\nnpm install --save-dev cypress-plugin-grep-boxes\n```\n\n2. In `cypress/support/e2e.js` (For E2E tests) and/or `cypress/support/component.js` (For Component tests),\n\n\u003e [!IMPORTANT]\n\u003e In the plugin version 2.0.0, the `e2e.js` (or `component.js`) support file import has been updated for simplicity:\n\n```js\nimport 'cypress-plugin-grep-boxes';\nimport registerCypressGrep from '@bahmutov/cy-grep/src/support';\n\nregisterCypressGrep();\n```\n\n---\n\n## 🦺 Setup\n\n**Recommended**: Set two common expose variables tied to the `@bahmutov/cy-grep` package to enhance the experience utilizing the grep logic within the Cypress Test Runner UI using cypress open:\n\n```json\n{\n  \"expose\": {\n    \"grepOmitFiltered\": true,\n    \"grepFilterSpecs\": true\n  }\n}\n```\n\n\u003e [!NOTE]\n\u003e More information on `grepOmitFiltered` and `grepFilterSpecs` can be read within the [README for `@bahmutov/cy-grep`](https://github.com/bahmutov/cy-grep?tab=readme-ov-file#pre-filter-specs-grepfilterspecs).\n\n## ✅ Open mode\n\nWithin each spec in Cypress `open` mode:\n\n- You can select any given number of individual test(s) and click the filter toggle located on the reporter above\n- You can click on any available tag and run only tests in the spec with the respective tag\n\n\u003cimg width=\"295\" height=\"182\" alt=\"grep-boxes-ui\" src=\"https://github.com/user-attachments/assets/fad9ebc9-e417-41aa-9f31-519855113d17\" /\u003e\n\n### Using cypress-plugin-filter-runnables\n\n**NEW** in v2.1.0: If filtering tests using [cypress-plugin-filter-runnables](https://github.com/dennisbergevin/cypress-plugin-filter-runnables), simply click the filter toggle located on the reporter above to only run those tests.\n\nNo need to check each checkbox of each test you see after filtering by test title!\n\n### Use Required Test Tags Instead Of Skipping Tests\n\n\u003e [!NOTE]\n\u003e Read more about this topic within a blog post [Use Required Test Tags Instead Of Skipping Tests](https://glebbahmutov.com/blog/required-tags-instead-of-skipped-tests/) and within the [README for `@bahmutov/cy-grep`](https://github.com/bahmutov/cy-grep#required-tags).\n\nNormally, any Cypress test or suite of tests marked with a `.skip` will be shown when running tests or within the Cypress test runner UI.\n\nSince this plugin uses `@bahmutov/cy-grep` plugin, we can instead designate skipped tests using a **required tag**:\n\n```js\nit('deletes an item', { requiredTags: '@skip' }, () =\u003e {\n  expect(1).to.equal(2);\n});\n```\n\nNow running or opening Cypress in interactive mode, **you will not see any tests with `requiredTags` including `@skip`** (unless setting expose variable `grepTags=@skip`).\n\nTo run just those tests with the required tag `@skip` in interactive mode:\n\n```bash\nnpx cypress open --expose grepTags=@skip\n```\n\n## hideSpecTags\n\nThe `cypress-plugin-grep-boxes` plugin (new in v2.0.0) displays all available `effectiveTestTags` in the Cypress Test Runner for each test.\n\nIf for any reason you'd like to exclude tags from being displayed in the Cypress Test Runner, use the expose variable `hideSpecTags` set to an array of tags you do not want to be displayed in the Cypress Test Runner.\n\n### Hide specific tags\n\nExample:\n\n```json\n{\n  \"expose\": {\n    \"hideSpecTags\": [\"@smoke\", \"@sanity\"]\n  }\n}\n```\n\nThe example above would hide `@smoke` and `@sanity` tags, but show all other tags, in the Cypress Test Runner.\n\n### Hide all tags\n\nIf you'd like to exclude all tags from being displayed in the Cypress Test Runner, use the following:\n\n```json\n{\n  \"expose\": {\n    \"hideSpecTags\": [\"*\"]\n  }\n}\n```\n\nThe example above would not display ANY tags to Cypress Test Runner.\n\n### Hide all tags EXCEPT specified\n\nIf you'd like to ONLY display a specific subset of tags in the Cypress Test Runner, prefix tags you'd like to see displayed with `+`:\n\n```json\n{\n  \"expose\": {\n    \"hideSpecTags\": [\"*\", \"+@smoke\", \"+@sanity\"]\n  }\n}\n```\n\nThe example above would hide all tags EXCEPT `@smoke` and `@sanity` tags in the Cypress Test Runner.\n\n## disableInitialAutoRun\n\nCypress Test Runner UI automatically runs available tests once a spec file is open.\n\nTo prevent this behavior to have control of when and which tests to run, add the expose variable `disableInitialAutoRun=true`:\n\n![disableInitialAutoRun_demo](https://github.com/user-attachments/assets/95fc4807-847b-432e-9b03-dc4fbe9f955a)\n\n```bash\n# Example via CLI\nnpx cypress open --expose disableInitialAutoRun=true\n```\n\n**Tip:** you can set this expose variable in the [config file](https://docs.cypress.io/guides/references/configuration) file to enable it by default and skip using the expose variable:\n\n```js\n// config file\n{\n  \"e2e\": {\n    \"expose\": {\n      \"disableInitialAutoRun\": true\n    }\n  }\n}\n```\n\n## Contributions\n\nFeel free to open a pull request or drop any feature request or bug in the [issues](https://github.com/dennisbergevin/cypress-plugin-grep-boxes/issues).\n\nPlease see more details in the [contributing doc](./CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdennisbergevin%2Fcypress-plugin-grep-boxes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdennisbergevin%2Fcypress-plugin-grep-boxes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdennisbergevin%2Fcypress-plugin-grep-boxes/lists"}