Skip to content

Installation ​

FeedValue works with any website. Choose your preferred installation method below.

Script Tag (Simplest) ​

The quickest way to add FeedValue to any site:

html
<script
  src="https://cdn.feedvalue.com/widget.js"
  data-widget-id="YOUR_WIDGET_ID"
  async
></script>

Add this code before the closing </body> tag on any page.

NPM Packages ​

Packages Available

FeedValue's SDK packages are published on npm. Use the package that matches your stack below, or stick with the script tag above if you want the quickest no-build-step install.

For framework integration with full TypeScript support:

React / Next.js ​

bash
npm install @feedvalue/react
# or
pnpm add @feedvalue/react

See React Integration or Next.js Integration.

Vue / Nuxt ​

bash
npm install @feedvalue/vue
# or
pnpm add @feedvalue/vue

See Vue Integration.

Core (Vanilla JavaScript) ​

For advanced usage or custom frameworks:

bash
npm install @feedvalue/core
# or
pnpm add @feedvalue/core
ts
import { FeedValue } from '@feedvalue/core';

const widget = FeedValue.init({ widgetId: 'your-widget-id' });

widget.on('ready', () => {
  console.log('Widget ready!');
});

widget.open();

Package Comparison ​

PackageUse CaseFeatures
Script tagAny websiteDrop-in, no build step
@feedvalue/reactReact/Next.js appsHooks, Provider, TypeScript
@feedvalue/vueVue/Nuxt appsComposables, Plugin, TypeScript
@feedvalue/coreCustom integrationBase SDK, events, API

Framework Integrations ​

For detailed setup guides:

Content Security Policy (CSP) ​

If your site uses a Content Security Policy, allow these domains:

script-src: https://cdn.feedvalue.com
connect-src: https://api.feedvalue.com

Example CSP header:

Content-Security-Policy: script-src 'self' https://cdn.feedvalue.com; connect-src 'self' https://api.feedvalue.com;

INFO

This is only required if your site has a restrictive CSP. Most sites don't need this.

Verifying Installation ​

After installation:

  1. Visit your website
  2. Look for the feedback button (default: bottom-right corner)
  3. Click it to verify the modal opens

TIP

Use your browser's developer tools (F12) to check for any console errors if the widget doesn't appear.

Headless Mode ​

All NPM packages support headless mode for complete UI control:

tsx
// React
<FeedValueProvider widgetId="..." headless>

// Vue
createFeedValue({ widgetId: '...', headless: true })

// Core
FeedValue.init({ widgetId: '...', headless: true })

In headless mode:

  • No DOM elements are injected
  • You build your own trigger button and modal
  • All API methods and events still work
  • Dashboard config is still fetched (for validation, etc.)

See the framework-specific guides for headless examples.

Built with care by SarverEnterprises