Consent infrastructure / made human

Cookie consent is boring.
I fixed the wrong problem.

A headless, multilingual consent manager for products that care how privacy language feels.

ONE CONSENT MODEL / MANY LOCAL VOICES

/ 01

Privacy is a promise.
It should not sound like a pop-up.

Consent Cuisine gives product teams a reliable consent engine and a language layer with enough character to belong in the experience.

01

Consent stays serious

Every choice maps to a stable technical ID. Your privacy model never depends on display copy.

02

Language gets a point of view

Bring a locale module when a generic cookie banner is not how your product should sound.

03

The UI is yours

Use React, Vue, a server-rendered template, or no framework at all. The core only manages state.

/ 02

State beneath.
Flavor above.

The data your app stores remains technical and dependable. The labels people read are independently replaceable.

Explore the API →
01Your interfaceAny framework, any visual language.
02Consent Cuisine coreCategories, state, versions, storage.
03Locale moduleCopy, variants, and local character.
04Stable recordTechnical IDs only. Always.

/ 03

Small API.
Long memory.

Policy changes invalidate old choices. Required categories remain required. Storage is yours to choose.

import { createConsentCuisine, createLocalStorage } from "@consent-cuisine/core";
import { ptBR } from "@consent-cuisine/cuisines/pt-BR";

const consent = createConsentCuisine({
  locale: "pt-BR",
  cuisine: true,
  locales: [ptBR],
  storage: createLocalStorage(),
  policyVersion: "2026-10"
});

/ 04

Give your banner
something worth saying.

Install the state engine, add the locales you need, then make the experience your own.

$ pnpm add @consent-cuisine/core @consent-cuisine/cuisines