Skip to content

Add UniConsent benchmark with visible banner selector#9

Draft
jrhe wants to merge 1 commit into
inthhq:mainfrom
jrhe:jrhe/add-uniconsent-benchmark
Draft

Add UniConsent benchmark with visible banner selector#9
jrhe wants to merge 1 commit into
inthhq:mainfrom
jrhe:jrhe/add-uniconsent-benchmark

Conversation

@jrhe

@jrhe jrhe commented Jun 24, 2026

Copy link
Copy Markdown

Summary

Adds a with-uniconsent benchmark app for UniConsent, configuring CookieBench metadata, visible banner selector, service hosts, and proprietary source/company fields.

Project ID note

Existing external-script benchmarks commit public client-side vendor IDs/config URLs directly in source. This draft follows that shape, but currently uses a placeholder UniConsent project ID. For an upstream-ready benchmark, UniConsent should provide or approve a public benchmark/demo project ID configured for the benchmark host, as I don't have permission to publish the one I have access to.

The private project ID, host, config URL, and test URL used during local validation are not included in this PR. The current placeholder ID loads UniConsent scripts/config but does not render a visible banner locally.

Local UniConsent result

Local UniConsent validation, 20 iterations:

Application Score Banner Visibility Network Impact Bundle Strategy Viewport Coverage FCP LCP CLS
UniConsent 61 378ms 394bytes IIFE Script 36.3% 70ms 389ms 0.001

Category scores from that run:

Category Score
Performance 83
Bundle Strategy 30
Network Impact 75
Transparency 30
User Experience 55

Notes

  • The benchmark mirrors UniConsent's vendor install pattern using native head scripts: synchronous stub scripts first, followed by the async CMP script.
  • The synchronous stub script lint suppressions are scoped to those two tags because the UniConsent install snippet requires them before the CMP script.
  • The selector targets #uniccmp .unic-bar, the visible bar rendered inside UniConsent's runtime container; #uniccmp itself is a zero-height wrapper.

Validation

  • pnpm --filter with-uniconsent fmt
  • pnpm --filter with-uniconsent lint
  • pnpm --filter with-uniconsent exec tsc --noEmit --project tsconfig.json
  • pnpm --filter with-uniconsent build

@vercel

vercel Bot commented Jun 24, 2026

Copy link
Copy Markdown

@jrhe is attempting to deploy a commit to the Inth Team on Vercel.

A member of the Team first needs to authorize it.

@coderabbitai

coderabbitai Bot commented Jun 24, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: f808d757-73a6-42a1-aefc-77020dc9288f

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@jrhe

jrhe commented Jun 24, 2026

Copy link
Copy Markdown
Author

@BurnedChris dropping this here incase you want to add UniConsent to the benchmark. Would need a uniconsent sub though unfortunately, unless you want to add my results to the page and then caveat with third party/user submitted.

c15t is a breath of fresh air compared to other CMPs. Really didn't understand the big fuss when hearing you talk about it at a Vercel event as I'd never had to implement them myself. DX is top!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant