What is VuePress
VuePress a markdown-centered static site generator.
Get an API key
- Go to the Inkeep Dashboard
- Select your project under Projects
- Go to the Integrations tab
- Click on Create integration
- Select Web
- Provide a Name and URL (optional) for the integration
- Click on Create
- Click the Example < /> button to get your API key and view suggested settings
Load the script files
- Navigate to the
.vuepress
directory
- Add the below scripts to the
config.js
file:
export default {
head: [
[
"script",
{
src: "https://unpkg.com/@inkeep/uikit-js@0.3.18/dist/embed.js",
type: "module",
defer: true,
onLoad: "initializeInkeep()",
},
],
["script", { src: "js/addInkeep.js", type: "module", defer: true }],
],
};
Create the addInkeep.js script
Create an addInkeep.js
file in your public/js
folder.
touch public/js/addInkeep.js
Now, configure the chat button component.
const initializeInkeep = () => {
const addInkeepWidget = () => {
const inkeepWidget = Inkeep().embed({
componentType: "ChatButton",
colorModeSync: {
observedElement: document.documentElement,
isDarkModeCallback: (el) => {
const currentTheme = el.getAttribute("data-color-mode");
return currentTheme === "dark";
},
colorModeAttribute: "data-color-mode",
},
properties: {
chatButtonType: "PILL",
baseSettings: {
apiKey: "INKEEP_API_KEY",
integrationId: "INKEEP_INTEGRATION_ID",
organizationId: "INKEEP_ORGANIZATION_ID",
primaryBrandColor: "#26D6FF",
organizationDisplayName: "Inkeep",
},
modalSettings: {
},
searchSettings: {
},
aiChatSettings: {
botAvatarSrcUrl: "https://mydomain.com/mylogo",
quickQuestions: [
"Example question 1?",
"Example question 2?",
"Example question 3?",
],
},
},
});
};
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", addInkeepWidget);
return;
}
addInkeepWidget();
};
For a full list of customizations, check out the Chat Button documentation.