© 2026 Hedgehog Software, LLC
useCookie()
/middleware/ab-test.global.ts
const COOKIE_NAME = "ab_variant"; const THRESHOLD = 0.5; export default defineNuxtRouteMiddleware((to, from) => { const variant = useCookie(COOKIE_NAME); if (!variant.value) { variant.value = Math.random() <= THRESHOLD ? "a" : "b"; } if (!useVariant().value) { useVariant().value = variant.value; } });
composables/useVariant.ts
export const useVariant = () => useState("variant");