{"id":20004157,"url":"https://github.com/fffunction/backstop-crawl","last_synced_at":"2025-09-25T19:00:16.266Z","repository":{"id":57189097,"uuid":"67590079","full_name":"fffunction/backstop-crawl","owner":"fffunction","description":"🕷 Crawls a site to generate a backstopjs config file with scenarios pre-populated","archived":false,"fork":false,"pushed_at":"2020-08-28T21:16:19.000Z","size":204,"stargazers_count":38,"open_issues_count":13,"forks_count":18,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-07T10:18:47.233Z","etag":null,"topics":["javascript","pr-welcome","regression-testing"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fffunction.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"contributing.md","funding":null,"license":null,"code_of_conduct":"code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-09-07T08:58:44.000Z","updated_at":"2024-03-14T08:53:10.000Z","dependencies_parsed_at":"2022-09-15T03:50:27.185Z","dependency_job_id":null,"html_url":"https://github.com/fffunction/backstop-crawl","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffunction%2Fbackstop-crawl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffunction%2Fbackstop-crawl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffunction%2Fbackstop-crawl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffunction%2Fbackstop-crawl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fffunction","download_url":"https://codeload.github.com/fffunction/backstop-crawl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224398478,"owners_count":17304580,"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":["javascript","pr-welcome","regression-testing"],"created_at":"2024-11-13T05:28:43.821Z","updated_at":"2025-09-25T19:00:11.186Z","avatar_url":"https://github.com/fffunction.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# $ backstop-crawl\n[![Stories in Ready](https://badge.waffle.io/fffunction/backstop-crawl.svg?label=ready\u0026title=Ready)](http://waffle.io/fffunction/backstop-crawl) [![Build Status](https://travis-ci.org/fffunction/backstop-crawl.svg?branch=master)](https://travis-ci.org/fffunction/backstop-crawl) [![Coverage Status](https://coveralls.io/repos/github/fffunction/backstop-crawl/badge.svg?branch=master)](https://coveralls.io/github/fffunction/backstop-crawl?branch=master)\n\n\u003e `backstop-crawl` is a tool for automatically generating the `backstop.json` required for [`backstop`](https://github.com/garris/BackstopJS) by crawling a website.\n\n![](http://i.imgur.com/yv57RDo.gif)\n\n## Install\n\n```\n$ npm install --global backstop-crawl\n```\n\n## Usage\n\n```\n❯ backstop-crawl\n\n  Crawl a site to generate a backstopjs config\n\n  Usage\n    $ backstop-crawl \u003curl\u003e\n\n  Options\n    --outfile, -o        Save the backstop config to this file\n    --debug              Logs out errors produced while crawling\n    --ignore-robots      Ignore the sites robots.txt\n    --ignore-ssl-errors  Treat any certificate as valid (e.g. self-signed\n                          or expired)\n    --allow-subdomains   Allow crawling links found to subdomains of the\n                          current domain\n    --limit-similar[=3]  Limits the number of similar URLs to a set number\n                         Defaults to 3\n                          e.g /blog/1, /blog/2, /blog/3\n    --reference-url  Allows a reference URL to be used in testing\n\n  Examples\n    $ backstop-crawl http://localhost\n    $ backstop-crawl http://localhost --reference-url='https://mycoolsite.com'\n\n```\n\n## `backstop.template.json`\nYou can customize the contents of the generated `backstop.json` file by creating a `backstop.template.json` file. In addition to standard items in [`backstop.json`](https://github.com/garris/BackstopJS#working-with-your-config-file) the `backstop.template.json` needs a `defaultScenario` key. This will be used when generating the `scenarios` for crawled URLs.\n\nFor example:\n```json\n{\n  \"scenarios\": [],\n  \"defaultScenario\": {\n  \t\"label\": \"Default\",\n  \t\"url\": \"\",\n  \t\"referenceUrl\": \"\",\n  \t\"hideSelectors\": [],\n  \t\"selectors\": [\n  \t\"document\"\n  \t],\n  \t\"readyEvent\": null,\n  \t\"delay\": 1500,\n  \t\"misMatchThreshold\": 0.1\n  }\n}\n```\n\n## License\n\nMIT © fffunction [fffunction.co](https://fffunction.co)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffffunction%2Fbackstop-crawl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffffunction%2Fbackstop-crawl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffffunction%2Fbackstop-crawl/lists"}