Before you start
- A Feddy project and its project ID. You’ll find the ID under Settings → Install in the dashboard. No project yet? Create one first.
- Nothing to install from npm. The widget is one script loaded from Feddy’s servers after the page is interactive.
1
Add a client component
Next.js has a built-in
Script component for loading scripts like this one. It needs to know when the script has finished loading so it can tell Feddy which project this is, and that callback only works in a client component, hence the 'use client' line:app/support.tsx
The project ID isn’t a secret. It’s visible in your bundle, so anyone can find it, and that’s fine: it only tells Feddy which inbox a message belongs to. Commit it like any other setting. There’s nothing to protect, so keep it out of your secrets file.
2
Render it from the root layout
app/layout.tsx
launcher: false to init and call Feddy.open() when the button is clicked.3
Send yourself a message
Open the page, click the button, and send a message. Then open your inbox at dash.feddy.app: it’s there, with the page URL and browser alongside.Reply from the inbox. Back on the page, the reply appears in the panel.
That’s the whole loop: a visitor writes in, you answer, and the answer reaches them on your site.
Next steps
Identify users
Tell Feddy who’s logged in, so you see their name in the inbox and replies can reach them by email.
Unread badge
Show the count on your own element when you’ve turned the floating button off.
Conversations
What you’re looking at in the inbox, and what happens on its own.
Web SDK reference
Every option and call in the widget.