Note that the widget only shows one use case. Users will only see the input field and the answer. An asset selection is not possible - the preselected assets will be taken into account. Guided search fields are not supported currently.
Prerequisites: Before you begin, ensure you have the required files provided by Genow:
vue.global.prod.js (Vue 3 build), genow-widget.css (styles), and genow-widget.umd.min.js (minified UMD bundle with FontAwesome included)- Load the required resources (CSS, Vue3, UMD bundle - see above),
- Add the custom element
<genow-widget>to your HTML & - Configure authentication and attributes.
(1) Basic Integration Steps
1
Load Resources
Include the CSS and JavaScript files in your HTML structure. You must load the widget CSS, the Vue 3 global build, and the Genow Widget UMD bundle.
2
Add the Custom Element
Add the
<genow-widget> custom element to your HTML where you want the widget to load. The widget is responsive and adapts to the container size, while overlays are shown over the whole screen.3
Handle Authentication
The widget requires a valid authentication token to access your data.Supported Authentication Methods:
- Firebase (email/password, Google SSO): use
auth-provider="Firebase" - Microsoft SSO (EntraID/Azure AD): use
auth-provider="Microsoft" - Google SAML: use
auth-provider="Genow"
(2) Configuration and Attributes
You can configure the widget using HTML attributes. Dynamic updates to these attributes via JavaScript are supported.Required Attributes
| Attribute | Description |
|---|---|
use-case-id | The ID of the use case you want to display. |
api-endpoint | Your Genow API endpoint URL. |
auth-provider | The name of the authentication provider. |
auth-token | The current authentication token. |
Optional Attributes
| Attribute | Description | Default |
|---|---|---|
selected-knowledge-asset-ids | Comma-separated list (e.g., “asset1, asset2”) of assets to query. | All default assets |
selected-thread-id | Pre-load a specific conversation thread. | - |
threads-page-size | Number of threads to load. | 1 |
llm | LLM model name (e.g., “gemini-2.5-pro”). | - |
locale | Language (“en” or “de”). | “en” |
environment | ”production” or “development”. | “production” |
use-shadow-dom | Encapsulates styles. Set to “false” if you want global styles to affect the widget. | ”true” |
(3) Advanced Customization
- Custom CSS
- Custom Translations
If
use-shadow-dom is enabled (default), you must use the custom-css attribute to override styles. You can override specific CSS variables for theming.Example
Troubleshooting
Browser Compatibility: The widget supports modern browsers (Chrome, Firefox, Safari, Edge) and requires JavaScript to be enabled.
- Widget not loading: Verify script paths for Vue and the UMD bundle.
- Authentication errors: Verify the validity of your token and that the provider name matches the backend configuration.
- Styling conflicts: If styles look wrong, try enabling Shadow DOM or adjusting your
custom-css. - CORS errors: Ensure your API endpoint allows requests from your domain.
