{"id":13725506,"url":"https://github.com/DevExpress/testcafe-hammerhead","last_synced_at":"2025-05-07T20:32:41.026Z","repository":{"id":33239493,"uuid":"36883823","full_name":"DevExpress/testcafe-hammerhead","owner":"DevExpress","description":"A powerful web-proxy used as a core for the TestCafe testing framework. :hammer: :smiley: ","archived":false,"fork":false,"pushed_at":"2024-11-06T12:18:53.000Z","size":9348,"stargazers_count":174,"open_issues_count":3,"forks_count":161,"subscribers_count":24,"default_branch":"master","last_synced_at":"2024-11-08T23:37:20.296Z","etag":null,"topics":["proxy","proxy-server","testcafe"],"latest_commit_sha":null,"homepage":"https://testcafe.io","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/DevExpress.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2015-06-04T16:56:53.000Z","updated_at":"2024-11-06T12:08:45.000Z","dependencies_parsed_at":"2024-02-28T08:33:12.172Z","dependency_job_id":"3bb54a2c-4bdf-4d22-933f-77d777f54be7","html_url":"https://github.com/DevExpress/testcafe-hammerhead","commit_stats":{"total_commits":1795,"total_committers":51,"mean_commits":35.19607843137255,"dds":0.7103064066852367,"last_synced_commit":"8c992c1db18ba686cd8cea70a5991aa6beca3c21"},"previous_names":[],"tags_count":356,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevExpress%2Ftestcafe-hammerhead","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevExpress%2Ftestcafe-hammerhead/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevExpress%2Ftestcafe-hammerhead/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevExpress%2Ftestcafe-hammerhead/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DevExpress","download_url":"https://codeload.github.com/DevExpress/testcafe-hammerhead/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224645391,"owners_count":17346141,"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":["proxy","proxy-server","testcafe"],"created_at":"2024-08-03T01:02:25.505Z","updated_at":"2024-11-14T15:31:23.863Z","avatar_url":"https://github.com/DevExpress.png","language":"JavaScript","readme":"# testcafe-hammerhead\n`testcafe-hammerhead` is a powerful Web proxy used as a core for the [TestCafe](https://github.com/devexpress/testcafe) testing framework.\n\n## Core Concepts\n\n`testcafe-hammerhead` is a URL-rewriting proxy. This means that it rewrites all properties of the appropriate JavaScript objects that contain a URL value (`Location`, `HTMLLinkElement.href`, etc). You can see it if you open a proxied page, invoke the browser's DevTools and inspect any element.\n\nIn addition, the proxied web page does not know that it is opened under a proxy. The proxy intercepts access attempts to all URL-containing properties and provides the original values.\n\n## First Look\n1. Clone the Hammerhead repository\n    ```cmd\n    git clone https://github.com/DevExpress/testcafe-hammerhead.git\n    ```\n1. Go to the `testcafe-hammerhead` folder\n    ```cmd\n    cd testcafe-hammerhead\n    ```\n1. Install the dependencies\n    ```cmd\n    npm install\n    ```\n1. Run the [Hammerhead playground](https://github.com/DevExpress/testcafe-hammerhead/blob/master/test/playground/server.js) to see our proxy in action\n    ```cmd\n    node node_modules/gulp/bin/gulp http-playground\n    ```\n\nThis opens a playground page where you can specify a webpage to proxy. Enter the page URL and hit **Proxy!**.\n\n## Features\n\n* HTTP/HTTPS requests\n* WebSockets, EventSource\n* file upload\n* request events (`onRequest`, `onResponse`)\n* bypassing requests\n* custom UI on a web page\n\n##  Reporting Issues and Contributing\n\nRead our [Contributing Guide](https://github.com/DevExpress/testcafe-hammerhead/blob/master/CONTRIBUTING.md) to learn how to contribute to the project.\n\n[![Build Status](https://img.shields.io/github/checks-status/DevExpress/testcafe-hammerhead/master?label=Tests)](https://github.com/DevExpress/testcafe-hammerhead/commits/master)\n\n[![Sauce Test Status](https://saucelabs.com/browser-matrix/testcafebot.svg)](https://saucelabs.com/u/testcafebot)\n\n[![Health Monitor](http://4.227.198.23:13500/badge/last-commit.svg)](http://4.227.198.23:13500/)\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDevExpress%2Ftestcafe-hammerhead","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDevExpress%2Ftestcafe-hammerhead","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDevExpress%2Ftestcafe-hammerhead/lists"}