Tutorial — Frontend Only — Step 6 of 6
Ship It
Theme it, wrap it for your framework, and go live.
Override any CSS custom property to match your brand — no Shadow DOM, your stylesheet applies directly:
css
:root {
--consenti-primary-bg: #ffffff;
--consenti-btn-primary-bg: #1565c0;
--consenti-btn-radius: 6px;
--consenti-banner-radius: 12px;
}Using React or Next.js? Wrap the widget in a small effect-based component:
ConsentSetup.tsx
tsx
'use client'
import { useEffect } from 'react'
import { ConsentiSetup } from '@consenti/ui'
export function ConsentSetup() {
useEffect(() => {
const widget = new ConsentiSetup({})
return () => widget.destroy()
}, [])
return null
}See Frameworks for Vue, Angular, and Nuxt equivalents, and Themes & CSS for every custom property.
💡That's a complete, GDPR-compliant frontend-only integration. Need server-side consent records, an audit log, or the admin dashboard? Switch to the Frontend + Backend tutorial.
What to read next
- UI Configuration — every
ConsentiSetupoption - API Methods — every widget method with examples
- Compliance guides — what each group requires
- Examples — complete real-life integrations