PactINTEROPERABILITY / 01Browser standard

Web Components + vanilla API

One consent layer.
Any rendering stack.

No React context is required here. Native custom elements subscribe directly to the same purpose decisions, GPC state, and preference surface.
HTML / NATIVE
<pact-gate purpose="marketing">
  <campaign-insights />
</pact-gate>

<pact-preferences-button>
  Privacy choices
</pact-preferences-button>
RENDERED RESULT
Purpose gate / marketingCampaign insights are active.

This content appeared because the shared consent state changed—not because a framework wrapper reimplemented it.

Unknown purpose should never render.

Privacy choices