Type-safe Convex component adding product feedback, feature requests, bug reports, upvotes, nested comments, and full-text search with optional React and React
npm install convex-feedbackConvex Feedback is a type-safe Convex component that adds product feedback infrastructure to an existing Convex app, covering feature requests, bug reports, upvotes, nested comments, comment likes, full-text search, and duplicate suggestions. It ships as two packages: a headless core with typed React hooks and a separate optional UI layer supporting both React DOM and React Native. Authentication and permissions are resolved in the host app, keeping the component decoupled from any specific auth strategy.
Install convex-feedback and register it in your convex/convex.config.ts using app.use(feedback). Then expose the feedback API from your host app to handle authentication and permissions. The component provides typed React hooks for reading and writing feedback, upvotes, nested comments, and search without any additional backend setup.
Install both convex-feedback and convex-feedback-ui. Import FeedbackScreen from convex-feedback-ui for React DOM or from convex-feedback-ui/native for React Native, then pass your generated hooks as props. The UI layer requires the headless convex-feedback component to be integrated first.
convex-feedback includes upvotes, nested comments, and comment likes as first-class features backed by Convex queries and mutations. The typed hooks expose these capabilities directly, and the optional convex-feedback-ui package renders them in a ready-made FeedbackScreen component.
convex-feedback ships with built-in full-text search and duplicate suggestion logic. When users submit new feedback, the component surfaces potentially duplicate entries, helping teams consolidate similar requests. Search is available through the typed hook API without additional configuration.
convex-feedback is a Convex component registered in your convex/convex.config.ts file using app.use(feedback). It adds its own tables and functions to your Convex deployment. You then expose a host-side API from your own Convex functions so authentication and permission checks run in your app's context rather than inside the component.
convex-feedback is fully headless and usable without convex-feedback-ui. It exposes typed React hooks for all operations including feedback submission, upvoting, nested comments, comment likes, and full-text search. convex-feedback-ui is an optional second package that provides a prebuilt FeedbackScreen for React DOM and React Native.
Yes. The convex-feedback-ui package exports a React Native version of FeedbackScreen from convex-feedback-ui/native. The headless convex-feedback hooks work in any JavaScript environment that supports Convex, including Expo projects.
convex-feedback includes product feedback submission, feature request tracking, bug report categorization, upvotes, nested comments, comment likes, full-text search, and duplicate suggestions. All of these are backed by Convex queries and mutations with TypeScript types.
Authentication and permissions are resolved in your host Convex app, not inside the component itself. You expose the feedback API through your own Convex functions, which lets you apply your existing auth logic using Convex's standard identity and session patterns before delegating to the component's internal functions.