Popups for React, without redeploys
Drop NounDesk into any React or Vite app. It's framework-agnostic and renders in the Shadow DOM, so it never fights your component styles.
One lightweight script
Under 30 KB, async, and conflict-free on React via the Shadow DOM.
No plugin or app
No npm dependency and no hydration conflicts — it runs outside your React tree in the Shadow DOM.
Target & trigger precisely
By URL, device, country, UTM, and new vs returning — on load, delay, scroll, exit, or click.
Capture leads
Email + custom fields with CSV export and signed webhooks to your stack.
Add NounDesk to React in minutes
- 1
Create a free NounDesk account and add your website to get an embed key.
- 2
Add the script tag to your root HTML (public/index.html) or app layout — no npm package, no bundler config.
- 3
Build and publish campaigns from the dashboard — changes go live instantly.
The one script you add to React:
<script async src="https://noundesk.com/widget.js"
data-key="nf_live_xxxxx"></script>React popups — FAQ
How do I add a popup to my React site?+
Create a campaign in the NounDesk dashboard, then Add the script tag to your root HTML (public/index.html) or app layout — no npm package, no bundler config. After that, every popup, banner, and form is managed from the dashboard — no further code changes.
Do I need a plugin or app for React?+
No. No npm dependency and no hydration conflicts — it runs outside your React tree in the Shadow DOM. NounDesk is a single, framework-agnostic script.
Will NounDesk slow down my React site?+
No. The script is under 30 KB gzipped, loads asynchronously, initializes in about 100 ms, and renders inside the Shadow DOM so it never blocks rendering or conflicts with your CSS.
Can I capture emails on React?+
Yes. Add a lead-capture form to any modal, slide-in, banner, or exit-intent popup, then export submissions to CSV or forward them to your tools via signed webhooks.
Launch your first React popup today
Free plan, one script, no plugin. Set it up in minutes.
Get started free