Access and use HTTP Client Hints in your application. Detect the client browser and the operating system on your server.
- 🚀 Browser and Operating System detection: check detect-browser-es for more information.
- 💥 Device Hints detection
- ⚡ Network Hints detection
- ✨ Critical Hints detection
Warning
The HTTP Client hints headers listed below are still in draft and only Chromium based browsers support them: Chrome, Edge, Chromium and Opera.
The module includes support for the following HTTP Client hints:
Install the package you want to use in your application, this package exports each client hint separately, or you can use the default to use all the hints.
import {
extractBrowserHints,
extractCriticalHints,
extractDeviceHints,
extractNetworkHints,
} from 'http-client-hints'
or
import { extractBrowserHints } from 'http-client-hints/browser'
import { extractCriticalHints } from 'http-client-hints/critical'
import { extractDeviceHints } from 'http-client-hints/device'
import { extractNetworkHints } from 'http-client-hints/network'
You can also use require (CommonJS: CJS), the package has been built with dual ESM and CJS support.
const {
extractBrowserHints,
extractCriticalHints,
extractDeviceHints,
extractNetworkHints,
} = require('http-client-hints')
or
const { extractBrowserHints } = require('http-client-hints/browser')
const { extractCriticalHints } = require('http-client-hints/critical')
const { extractDeviceHints } = require('http-client-hints/device')
const { extractNetworkHints } = require('http-client-hints/network')
You can also use this package when using H3:
import { extractImageClientHints } from 'http-client-hints/h3'
If you want to use this package in your Nuxt application, check Nuxt HTTP Client Hints Module.
That's it! You can now use HTTP Client Hints in your server application ✨
You can check the source code or the JSDocs for more information.
MIT License © 2024-PRESENT Joaquín Sánchez