IntegrationsVitepress

Add Chat Button to VitePress

Copy page

Integrate Inkeep's chat button into your VitePress documentation for real-time user assistance.

What is VitePress

VitePress is a lightweight static site generator based on Vue.

Get an API key

Follow these steps to create an API key for your web assistant.

Copy and add the apiKey to your environment variables:

.env
VITE_INKEEP_API_KEY="INKEEP_API_KEY"

Load the script files

Add the below scripts to the config.ts file:

config.ts
export default {
  head: [
    [
      "script",
      {
        src: "https://cdn.jsdelivr.net/npm/@inkeep/cxkit-js@0.5/dist/embed.js",
        type: "module",
        defer: true,
      },
    ],
    ["script", { src: "static/addInkeep.js", type: "module", defer: true }],
  ],
};

Create the addInkeep.js script

Create an addInkeep.js file in your static folder.

touch static/addInkeep.js

Now, configure the chat button component.

const config = {
  baseSettings: {
    apiKey: "INKEEP_API_KEY", // required
    primaryBrandColor: "#26D6FF", // your brand color, widget color scheme is derived from this
    organizationDisplayName: "Inkeep",
    // ...optional settings
  },
  modalSettings: {
    // optional settings
  },
  searchSettings: {
    // optional settings
  },
  aiChatSettings: {
    // optional settings
    aiAssistantAvatar: "/img/logo.svg", // use your own AI assistant avatar
    exampleQuestions: [
      "Example question 1?",
      "Example question 2?",
      "Example question 3?",
    ],
  },
};

const inkeepWidget = Inkeep.ChatButton(config);

For a full list of customizations, check out the Chat Button documentation.

Positioning

We support customization of styles via custom css in baseSettings, you can style "Ask AI" button by targetting it's class as so:

const baseSettings = {
  theme: {
    //...Other base Settings

    // Custom styles injection
    styles: [
      {
        key: "custom-theme",
        type: "style",
        value: `
         .ikp-chat-button__container {
           // Position the Ask-AI button on the left
           left: 1.5rem;
         }
       `,
      },
    ],
  },
};

You can find more information in the Custom Styles documentation.