Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

nuxt-http-client-hints

userquin2.1kMIT0.0.2TypeScript support: included

Nuxt HTTP Client Hints

HTTP Client Hints, User Agent Client Hints, Device Client Hints, Network Client Hints, Browser detection, nuxt module

readme

Nuxt HTTP Client Hints Module

npm version npm downloads JSDocs License Nuxt

Access and use HTTP Client Hints in your Nuxt application. Detect the client browser and the operating system on your server.

Open in StackBlitz

Features

HTTP Client hints

[!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:

Quick Setup

Install the module to your Nuxt application with one command:

npx nuxi module add nuxt-http-client-hints

Add your configuration to your Nuxt config file:

httpClientHints: {
  // Your configuration here
}

Add your client and server plugins to your Nuxt application and register the corresponding hooks with your configuration:

// my-plugin.client.js
export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.hook('http-client-hints:client-hints', (httpClientHints) => {
    // Your client logic here
  })
})
// my-plugin.server.js
export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.hook('http-client-hints:ssr-client-hints', (httpClientHints) => {
    // Your server logic here
  })
})

You use the httpClientHints object in your application to access the configuration:

<!-- SomeComponent.vue -->
<template>
  <pre>{{ $httpClientHints }}"</pre>
</template>

or in your modules, composables, or other plugins:

// my-module.js
const clientHints = useNuxtApp().$httpClientHints

That's it! You can now use HTTP Client Hints in your Nuxt app ✨

You can check the source code or the JSDocs for more information.

Contribution

<summary>Local development</summary>
  # Install dependencies
  pnpm install

  # Generate type stubs
  pnpm dev:prepare

  # Develop with the playground
  pnpm dev

  # Build the playground
  pnpm dev:build

  # Run ESLint
  pnpm lint

  # Run Vitest
  pnpm test
  pnpm test:watch

License

MIT License © 2024-PRESENT Joaquín Sánchez