{"id":19436622,"url":"https://github.com/tech-pw/platform-hyper-express","last_synced_at":"2025-07-09T06:07:02.643Z","repository":{"id":247754470,"uuid":"823024410","full_name":"tech-pw/platform-hyper-express","owner":"tech-pw","description":"Nest.js http adapter using hyper-express, powered by uWebsockets.js","archived":false,"fork":false,"pushed_at":"2025-03-11T12:53:53.000Z","size":207,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-09T06:06:49.203Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/tech-pw.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-07-02T09:28:55.000Z","updated_at":"2025-02-06T11:47:22.000Z","dependencies_parsed_at":"2025-04-24T21:33:48.888Z","dependency_job_id":null,"html_url":"https://github.com/tech-pw/platform-hyper-express","commit_stats":null,"previous_names":["tech-pw/platform-hyper-express"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tech-pw/platform-hyper-express","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-pw%2Fplatform-hyper-express","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-pw%2Fplatform-hyper-express/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-pw%2Fplatform-hyper-express/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-pw%2Fplatform-hyper-express/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tech-pw","download_url":"https://codeload.github.com/tech-pw/platform-hyper-express/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-pw%2Fplatform-hyper-express/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264403799,"owners_count":23602621,"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":[],"created_at":"2024-11-10T15:12:07.364Z","updated_at":"2025-07-09T06:07:02.617Z","avatar_url":"https://github.com/tech-pw.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hyper-Express Adapter for NestJS\n\n\n## Motivation\n**`platform-hyper-express`** is [**`NestJS HTTP Adapter`**](https://docs.nestjs.com/faq/http-adapter) that implement hyper-express into NestJS.\n\n[**`hyper-express`**](https://github.com/kartikk221/hyper-express) aims to be a simple yet performant HTTP \u0026 Websocket Server.\n\nCombined with the power of [**`uWebsockets.js`**](https://github.com/uNetworking/uWebSockets.js) - a Node.js binding of uSockets written in C++, **`platform-hyper-express`** allows NestJS Developers to unlock higher throughput for their web applications with their existing hardware.\n\nOriginal work inspired by [m8a-io](https://github.com/m8a-io/hyper-express-adapter)\n\n\n## Installation\n```sh\nnpm i @pw-tech/platform-hyper-express\n```\n\n\n\n## Usage\nUse **HyperExpressAdapter** for NestJS HTTP Adapter. Must require **`@nestjs/platform-express`** in dependencies.\n```js\nimport { NestFactory } from '@nestjs/core';\nimport { HyperExpressAdapter, NestHyperExpressApplication } from '@pw-tech/platform-hyper-express';\nimport { AppModule } from './app.module';\n\nasync function bootstrap() {\n  const app = await NestFactory.create\u003cNestHyperExpressApplication\u003e(AppModule, new HyperExpressAdapter({ max_body_length: 5 * 1024 * 1024 }), { bufferLogs: true });\n  await app.listen(3000);\n}\nbootstrap();\n```\n\n\n\n## Examples\nTBA\n\n## Supported Versions\n\n- Node `\u003e=16`\nNode 22 is also supported.\n\n## APM Support\n\n**@pw-tech/platform-hyper-express** is fully compatabile with dd-trace and opentelememetry APM using our [opentelemetry-instrumentaion-hyper-express](https://github.com/tech-pw/opentelemetry-instrumentation-hyper-express) package.\nCheckout the above package for more info on usage.\n\n\n## Encountering Problems?\n- **`@pw-tech/platform-hyper-express`** is mostly compatible with **`@pw-tech/platform-hyper-express`** but not **100%** therefore you may encounter some middlewares not working out of the box. In this scenario, you must either write your own polyfill or omit the middleware to continue.\n- Currently uWebsockets.js supports only Node.js LTS versions 16, 18, 20 and 22 on (glibc) Linux, macOS and Windows, on [**`Tier 1`**](https://github.com/nodejs/node/blob/master/BUILDING.md#platform-list) platforms.\n- The uWebsockets.js version header is disabled by default. You may opt-out of this behavior by setting an environment variable called **`KEEP_UWS_HEADER`** to a truthy value such as **`1`** or **`true`**.\n\n\n\n## Still Having Problems?\n- Open an [**`Issue`**](https://github.com/tech-pw/opentelemetry-instrumentation-hyper-express/issues) with details about what led up to the problem including error traces, route information, etc.\n\n\n\n## Testing Changes\nTo run platform-hyper-express functionality tests locally on your machine, you must follow the steps below.\n1. Clone the [**`platform-hyper-express`**](https://github.com/tech-pw/opentelemetry-instrumentation-hyper-express/issues) repository to your machine.\n2. Initialize and pull any submodule(s) which are used throughout the tests.\n3. Run **`npm install`** in the root directory.\n4. Run **`npm install`** in the **`/tests`** directory.\n5. Run **`npm test`** to run all tests with your local changes.\n\n\n## License\n[**MIT**](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftech-pw%2Fplatform-hyper-express","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftech-pw%2Fplatform-hyper-express","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftech-pw%2Fplatform-hyper-express/lists"}