Feedback board + roadmap
A feedback board your customers actually use.
Customers post ideas, vote and comment. You set the status and the roadmap updates itself. It lives in your app, on your domain, or both.
- 248 votesDark mode for the dashboard34 comments · UIIn progress
- 191 votesSlack notifications on status change22 comments · IntegrationsPlanned
- 164 votesExport feedback to CSV9 comments · DataShipped
- 132 votesZapier integration17 comments · IntegrationsOpen
Statuses
Five statuses. Everyone knows where they stand.
Open, planned, in progress, shipped or declined. Every status change notifies the voters on that post, so nobody has to ask “any update?”
Declined is shown as a clear, calm answer rather than an error. Customers respect a straight no more than silence.
- Open
- Planned
- In progress
- Shipped
Activity · Slack notifications on status change
- Maya moved it to Planned · ETA Q1 20272h ago
- 191 voters notified by email and in-app2h ago
- webhook feedback.status_changed → 2002h ago
Statuses in order: Open, Planned, In progress, Shipped. Declined is a separate answer.
Public roadmap
A roadmap you never have to update by hand.
The roadmap is built from your posts. When a post’s status changes, it moves column. Add a rough timeline to each column and you’re done.
It’s server-rendered and indexable, so your roadmap shows up when prospects search for what you’re building.
- Slack notifications▲ 191 · Integrations votes
- Bulk-edit statuses▲ 98 · Admin votes
- Saved filters▲ 54 · Board votes
- Dark mode▲ 248 · UI votes
- Zapier integration▲ 132 · Integrations votes
- CSV export▲ 164 · Data votes
- Custom board domain▲ 88 · Board votes
- SSO for voters▲ 61 · Identity votes
Anywhere your users are
In your app, on your domain. Already signed in.
Embed the board with the React SDK or a script tag, or run it on feedback.yourapp.com. Your backend signs a small token for the logged-in user, so every vote belongs to a real customer.
- No second login for your customers
- Guests can still post with just an email
- Tokens never appear in a URL
import { DawnlyProvider, DawnlyBoard } from '@dawnly/react'
export function Feedback({ me }) {
return (
<DawnlyProvider appId="ws_c9x2k1" dawnlyJwt={me.dawnlyJwt}>
<DawnlyBoard theme="system" />
</DawnlyProvider>
)
}Admin tools for a board that stays useful at 1,000 posts.
Merge duplicates
Fold duplicate posts into one. Votes and comments carry over and nobody loses their place.
Internal comments
Discuss scope and trade-offs with your team right on the post. Customers never see it.
Tags & segments
Tag posts by area or customer type, then filter the board by tag, status, votes or date.
Private posts
Keep sensitive requests visible only to your team. Make the whole board private if you need to.
Sort & filter
Sort by top voted, newest or status. Share a saved view link with anyone on your team.
Voter notifications
Voters hear about every status change and reply. You don’t have to follow up by hand.