https://github.com/belgattitude/httpx
Collection of libs: http exceptions, dsn-parser...
https://github.com/belgattitude/httpx
deno edge http-exceptions node typescript
Last synced: about 1 month ago
JSON representation
Collection of libs: http exceptions, dsn-parser...
- Host: GitHub
- URL: https://github.com/belgattitude/httpx
- Owner: belgattitude
- License: mit
- Created: 2022-11-21T15:33:38.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2026-05-05T06:10:15.000Z (about 1 month ago)
- Last Synced: 2026-05-05T08:16:10.548Z (about 1 month ago)
- Topics: deno, edge, http-exceptions, node, typescript
- Language: TypeScript
- Homepage: https://belgattitude.github.io/httpx
- Size: 42.5 MB
- Stars: 21
- Watchers: 1
- Forks: 1
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
## "do one thing" collection.
### [@httpx/lru](https://github.com/belgattitude/httpx/tree/main/packages/lru#readme)
LRU cache optimized for performance and low memory usage. 2x-4x times faster on `get()` than [quick-lru](https://github.com/sindresorhus/quick-lru)
without [memory overhead](https://github.com/sindresorhus/quick-lru?tab=readme-ov-file#trade-offs) and 6 times smaller than
[lru-cache](https://github.com/isaacs/node-lru-cache). Less than 1Kb.
[](https://www.npmjs.com/package/@httpx/lru)
[](https://github.com/belgattitude/httpx/blob/main/packages/lru/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Flru)
[](https://github.com/belgattitude/httpx/blob/main/packages/lru/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/lru)
### [@httpx/memo-intl](https://github.com/belgattitude/httpx/tree/main/packages/memo-intl#readme)
Speeds up Intl operations up to 50x. LRU-based memoizer for [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat),[Intl.DateFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat)
and other Intl constructors. Less than 1kb.
[](https://www.npmjs.com/package/@httpx/memo-intl)
[](https://github.com/belgattitude/httpx/blob/main/packages/memo-intl/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fmemo-intl)
[](https://github.com/belgattitude/httpx/blob/main/packages/memo-intl/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/memo-intl)
### [@httpx/plain-object](https://github.com/belgattitude/httpx/tree/main/packages/plain-object#readme)
Fast and lightweight utility functions to check if a value is a plain object.
[](https://www.npmjs.com/package/@httpx/plain-object)
[](https://github.com/belgattitude/httpx/blob/main/packages/plain-object/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fplain-object)
[](https://github.com/belgattitude/httpx/blob/main/packages/plain-object/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/plain-object)
### [@httpx/exception](https://github.com/belgattitude/httpx/tree/main/packages/exception#readme)
HTTP status errors with default message, instanceof, stack and nested error cause support.
Lightweight, typical usage between [500b and 1300b](https://belgattitude.github.io/httpx/exception#bundle-size).
Includes convenience typeguards, optional contextual info and a built-in serializer
to cover cross-environments challenges (RSC, SSR...).
[](https://www.npmjs.com/package/@httpx/exception)
[](https://github.com/belgattitude/httpx/blob/main/packages/exception/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fexception)
[](https://github.com/belgattitude/httpx/blob/main/packages/exception/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/exception)
### [@httpx/dsn-parser](https://github.com/belgattitude/httpx/tree/main/packages/dsn-parser#readme)
DSN & JDBC string parser with query params support in a light and modern package.
[](https://www.npmjs.com/package/@httpx/dsn-parser)
[](https://github.com/belgattitude/httpx/blob/main/packages/dsn-parser/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fdsn-parser)
[](https://github.com/belgattitude/httpx/blob/main/packages/dsn-parser/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/dsn-parser)
### [@httpx/md5](https://github.com/belgattitude/httpx/tree/main/packages/md5#readme)
One of the fastest md5 hash function optimized for small strings (<8Kb). Less than 1.2Kb in browser usage.
Automatically uses the native crypto module on node, bun for the best performance.
[](https://www.npmjs.com/package/@httpx/md5)
[](https://github.com/belgattitude/httpx/blob/main/packages/md5/CHANGELOG.md)
[](https://www.npmjs.com/package/@httpx/md5)
### [@httpx/treeu](https://github.com/belgattitude/httpx/tree/main/packages/treeu#readme)
Fast and lightweight utilities to work with trees.
[](https://www.npmjs.com/package/@httpx/treeu)
[](https://github.com/belgattitude/httpx/blob/main/packages/treeu/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Ftreeu)
[](https://github.com/belgattitude/httpx/blob/main/packages/treeu/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/treeu)
### [@httpx/assert](https://github.com/belgattitude/httpx/tree/main/packages/assert#readme)
Lightweight assertions and typeguards starting at [~60b](https://github.com/belgattitude/httpx/tree/main/packages/assert#bundle-size).
[](https://www.npmjs.com/package/@httpx/assert)
[](https://github.com/belgattitude/httpx/blob/main/packages/assert/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fassert)
[](https://github.com/belgattitude/httpx/blob/main/packages/assert/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/assert)
### [@httpx/stable-hash](https://github.com/belgattitude/httpx/tree/main/packages/stable-hash#readme)
Create keys or hashes from javascript values, useful for memoization or cache key generation.
[](https://www.npmjs.com/package/@httpx/stable-hash)
[](https://github.com/belgattitude/httpx/blob/main/packages/stable-hash/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fstable-hash)
[](https://github.com/belgattitude/httpx/blob/main/packages/stable-hash/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/stable-hash)
### [@httpx/compress](https://github.com/belgattitude/httpx/tree/main/packages/compress#readme)
String and Uint8Array compression utilities (gzip)
[](https://www.npmjs.com/package/@httpx/compress)
[](https://github.com/belgattitude/httpx/blob/main/packages/compress/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fcompress)
[](https://github.com/belgattitude/httpx/blob/main/packages/compress/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/compress)
### [@httpx/encode](https://github.com/belgattitude/httpx/tree/main/packages/encode#readme)
Base encoding
[](https://www.npmjs.com/package/@httpx/encode)
[](https://github.com/belgattitude/httpx/blob/main/packages/encode/CHANGELOG.md)
[](https://app.codecov.io/gh/belgattitude/httpx/tree/main/packages%2Fencode)
[](https://github.com/belgattitude/httpx/blob/main/packages/encode/.size-limit.cjs)
[](https://www.npmjs.com/package/@httpx/encode)
## Contributors
Contributions are welcome. Take a look to the [CONTRIBUTING](https://github.com/belgattitude/httpx/blob/main/CONTRIBUTING.md) docs or skip and try
```bash
# make a fork and clone it, then
yarn install
yarn g:test-unit
yarn g:lint
yarn g:typecheck
```
## Support
Don't hesitate and open [an issue](https://github.com/belgattitude/httpx/issues).
## Sponsors
If my OSS work brightens your day, let's take it to new heights together!
[Sponsor](<[sponsorship](https://github.com/sponsors/belgattitude)>), [coffee](<(https://ko-fi.com/belgattitude)>),
or star – any gesture of support fuels my passion to improve. Thanks for being awesome! 🙏❤️
### Special thanks to
## License
MIT © [belgattitude](https://github.com/belgattitude) and contributors.