Private in-app feedback boards (no public portal)

Public feedback boards look like product marketing. They also attract spam, SEO scrapers, and users who are not your customers.

Bootstrapware Feedback is a feedback board without a public portal. There is no anonymous /b/... page for visitors. You mount a private in-app feedback board where you already know the user, and keep feature requests inside your SaaS.

That is product scope, not a missing feature.

What embed-only means

  • The board lives inside your authenticated app (settings, help, changelog adjacent, etc.), not on a marketing-facing ideas site.
  • Your host asserts user.id: Feedback does not run an end-user login.
  • Board config is published for the widget; posts are BYO or Hosted depending on mode.
  • MCP and secret APIs configure boards, they do not replace your product shell.

When you still want a public roadmap

If you need a marketing site that lists ideas for anonymous visitors, use a public-board vendor or build static pages yourself. Feedback is for in-product requests and voting. See in-app vs public feedback portal.

Compare: Feedback vs alternatives, vs Canny, vs Featurebase.

Minimal embed

import { Feedback } from "@bootstrapware/feedback";
import "@bootstrapware/feedback/styles.css";

// Behind your auth gate, Hosted example
<Feedback
  boardId="brd_..."
  publishableKey="bsw_live_pub_..."
  user={{ id: session.userId, name: session.name }}
/>

Register allowed origins for live Hosted / config fetch. See origins.

Pitfalls

  • Assuming a shareable public URL exists after publish, it does not.
  • Leaving allowAnonymous on without understanding forge risk when a publishable key leaks.
  • Putting the widget on a marketing landing page without your own auth layer.

Related: Boards · Add to SaaS · Embed in React · vs public portal · vs Canny · Security