{"id":20971506,"url":"https://github.com/amanoteam/kad","last_synced_at":"2025-05-14T11:33:49.135Z","repository":{"id":196398868,"uuid":"696025075","full_name":"AmanoTeam/Kad","owner":"AmanoTeam","description":"A simple HTTP proxy server that forwards all requests through curl-impersonate","archived":false,"fork":false,"pushed_at":"2023-11-01T04:04:14.000Z","size":75,"stargazers_count":10,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-02T17:39:16.962Z","etag":null,"topics":["c","cpp","curl","curl-impersonate","http-proxy"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AmanoTeam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2023-09-24T23:03:15.000Z","updated_at":"2025-02-21T06:01:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"e8091d38-deb7-42d6-b0ac-4b3285c1156c","html_url":"https://github.com/AmanoTeam/Kad","commit_stats":null,"previous_names":["amanoteam/kad"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmanoTeam%2FKad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmanoTeam%2FKad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmanoTeam%2FKad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmanoTeam%2FKad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AmanoTeam","download_url":"https://codeload.github.com/AmanoTeam/Kad/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254131908,"owners_count":22020042,"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":["c","cpp","curl","curl-impersonate","http-proxy"],"created_at":"2024-11-19T04:02:52.161Z","updated_at":"2025-05-14T11:33:48.798Z","avatar_url":"https://github.com/AmanoTeam.png","language":"C","readme":"# Kad\n\nKad is a simple HTTP proxy server that forwards all requests through curl-impersonate.\n\n## Installation\n\nYou can obtain precompiled binaries from the [releases](https://github.com/AmanoTeam/Kad/releases) page.\n\n## Building\n\nClone this repository and fetch all submodules\n\n```bash\ngit clone --depth='1' 'https://github.com/AmanoTeam/Kad.git'\ncd Kad\ngit submodule update --init --depth='1'\n```\n\nConfigure, build and install:\n\n```bash\ncmake -B build -DCMAKE_BUILD_TYPE=MinSizeRel\ncmake --build ./build\ncmake --install ./build\n```\n\n## Usage\n\nAvailable options:\n\n```\n$ kad --help\nusage: kad [-h] [-v] [--host HOST] [--port PORT] [--target TARGET]\n\nA simple HTTP proxy server that forwards all requests through curl-impersonate.\n\noptions:\n  -h, --help       Show this help message and exit.\n  -v, --version    Display the Kad version and exit.\n  --host HOST      Bind socket to this host. [default: 127.0.0.1]\n  --port PORT      Bind socket to this port. [default: 4000]\n  --target TARGET  Impersonate this target. [default: chrome116]\n\nNote, options that take an argument require a equal sign. E.g. --host=HOST\n```\n\nYou can start a server with all default options by simply running `kad`:\n\n```\n$ kad\nStarting server at http://127.0.0.1:4000 (pid = 478)\n\n```\n\n## Examples\n\nKad is just a proxy server; you need an HTTP client to start using it.\n\nWith curl:\n\n```bash\n$ curl --proxy 'http://127.0.0.1:4000' --url 'http://example.com'\n```\n\nWith Python + Requests:\n\n```python\nimport requests\n\nproxies = {\n    \"http\": \"http://127.0.0.1:4000\",\n    \"https\": \"http://127.0.0.1:4000\"\n}\n\nresponse = requests.get(url = \"http://example.com\", proxies = proxies)\n```\n\nWith PHP + curl:\n\n```php\n\u003c?php\n$handle = curl_init();\ncurl_setopt($handle, CURLOPT_URL, \"http://example.com\");\ncurl_setopt($handle, CURLOPT_PROXY, \"http://127.0.0.1:4000\");\n\n$response = curl_exec($handle);\n```\n\n## HTTPS connections\n\nKad uses a self-signed certificate so it can decrypt requests made to HTTPS websites. Most HTTP clients will refuse sending requests to servers like this.\n\nTo circumvent this, you need to disable SSL certificate validation in your HTTP client (not recommended) or add Kad's [certificate](./tools/certificates/kad.crt) to your trust store (e.g., `/etc/ssl/certs`).\n\n## Limitations\n\n- Windows is not supported for now ([#1](https://github.com/AmanoTeam/Kad/issues/1))\n- Only supports impersonating Chrome, Edge and Safari\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famanoteam%2Fkad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famanoteam%2Fkad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famanoteam%2Fkad/lists"}