{"id":30703175,"url":"https://github.com/dfinity/http-gateway","last_synced_at":"2025-09-02T16:56:52.777Z","repository":{"id":167354055,"uuid":"635753314","full_name":"dfinity/http-gateway","owner":"dfinity","description":"Monorepo including building blocks, reference implementations and examples for HTTP Gateway Protocol implementations","archived":false,"fork":false,"pushed_at":"2025-08-14T08:19:05.000Z","size":989,"stargazers_count":5,"open_issues_count":1,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-14T10:25:12.420Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dfinity.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-05-03T11:41:04.000Z","updated_at":"2025-08-14T08:19:10.000Z","dependencies_parsed_at":"2024-05-22T13:30:03.289Z","dependency_job_id":"0eaa0bc7-bfe4-4cfb-bae1-d27ed47a52ee","html_url":"https://github.com/dfinity/http-gateway","commit_stats":null,"previous_names":["dfinity/http-gateway"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/dfinity/http-gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fhttp-gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fhttp-gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fhttp-gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fhttp-gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dfinity","download_url":"https://codeload.github.com/dfinity/http-gateway/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fhttp-gateway/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273317765,"owners_count":25084037,"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","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-09-02T16:56:47.182Z","updated_at":"2025-09-02T16:56:52.774Z","avatar_url":"https://github.com/dfinity.png","language":"Rust","readme":"# HTTP Gateway Protocol\n\n## Overview\n\nThe HTTP Gateway Protocol is an extension of the Internet Computer Protocol that allows conventional HTTP clients to interact with the Internet Computer network. This is important for software such as web browsers to be able to fetch and render client-side canister code, including HTML, CSS, and JavaScript as well as other static assets such as images or videos. The HTTP Gateway does this by translating between standard HTTP requests and API canister calls that the Internet Computer Protocol will understand.\n\nYou can read more about this protocol in [the spec](https://github.com/dfinity/interface-spec/blob/master/spec/http-gateway-protocol-spec.md).\n\n## Projects\n\n### HTTP Canister Client\n\n- [NPM Package](./packages/http-canister/README.md)\n- [NodeJS Example](./examples/http-canister-client/nodejs/README.md)\n\n| Command                                       | Description                    |\n| --------------------------------------------- | ------------------------------ |\n| `pnpm -F @dfinity/http-canister-client build` | Build NPM package              |\n| `pnpm -F http-canister-nodejs-example start`  | Run the NodeJS example project |\n\n## Related Projects\n\n- [Response Verification](https://github.com/dfinity/response-verification/)\n- [Service Worker](https://github.com/dfinity/ic/tree/master/typescript/service-worker)\n- [ICX Proxy](https://github.com/dfinity/ic/tree/master/rs/boundary_node/icx_proxy)\n- [Desktop HTTP Proxy](https://github.com/dfinity/http-proxy)\n\n## Contributing\n\nCheck out our [contribution guidelines](./.github/CONTRIBUTING.md).\n\n### Setup\n\n- [Install pre-commit](https://pre-commit.com/#installation)\n- [Install commitizen](https://commitizen-tools.github.io/commitizen/#installation)\n- [Install NVM](https://github.com/nvm-sh/nvm)\n\nInstall the correct version of NodeJS:\n\n```shell\nnvm install\n```\n\nActivate the correct version of NodeJS:\n\n```shell\nnvm use\n```\n\nInstall and activate the correct version of PNPM:\n\n```shell\ncorepack enable\n```\n\n### Making a Commit\n\n```shell\ncz commit\n```\n\nSee [Conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) for more information on the commit message formats\n\n### Package naming conventions\n\nNPM packages are named `@dfinity/\u003cpackage-name\u003e` and the folder name is `\u003cpackage-name\u003e-js`.\n\n### Referencing an NPM package\n\nAn NPM package can be referenced using the package name and [PNPM workspace protocol](https://pnpm.io/workspaces#workspace-protocol-workspace) in `package.json`:\n\n```json\n{\n  \"dependencies\": {\n    \"@dfinity/certificate-verification\": \"workspace:*\"\n  }\n}\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfinity%2Fhttp-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdfinity%2Fhttp-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfinity%2Fhttp-gateway/lists"}