@opentiny/genui-sdk-materials-vue-opentiny-vue
@opentiny/genui-sdk-materials-vue-opentiny-vue
A GenUI Vue materials package based on OpenTiny Vue, for schema-driven page generation and rendering.
Install
npm install @opentiny/genui-sdk-materials-vue-opentiny-vue @opentiny/genui-sdk-vue @opentiny/genui-sdk-core
Quick Start
Frontend Rendering
Inject materials via ConfigProvider:
import { GenuiConfigProvider, GenuiChat } from '@opentiny/genui-sdk-vue';
import { materials } from '@opentiny/genui-sdk-materials-vue-opentiny-vue/materials';
<GenuiConfigProvider :materials="materials">
<GenuiChat />
</GenuiConfigProvider>
Generate LLM Prompt (Server)
import { genPrompt } from '@opentiny/genui-sdk-core';
import { materialsMeta } from '@opentiny/genui-sdk-materials-vue-opentiny-vue/meta';
const systemPrompt = genPrompt('Vue', materialsMeta, customConfig);
materialsMeta.wrapperComponent defaults to TinyCard.
Use miniMaterials / miniMaterialsMeta for a smaller set (forms/tables, no charts).
Use plusMaterials / plusMaterialsMeta for full business pages (tree, dialog, timeline, etc.).
For Plus tier, import the plus entries instead:
import { GenuiConfigProvider, GenuiChat } from '@opentiny/genui-sdk-vue';
import { plusMaterials } from '@opentiny/genui-sdk-materials-vue-opentiny-vue/materials';
import { genPrompt } from '@opentiny/genui-sdk-core';
import { plusMaterialsMeta } from '@opentiny/genui-sdk-materials-vue-opentiny-vue/meta';
<GenuiConfigProvider :materials="plusMaterials">
<GenuiChat />
</GenuiConfigProvider>
const systemPrompt = genPrompt('Vue', plusMaterialsMeta, customConfig);
API
| Export Path | Exports | Description |
|---|---|---|
@opentiny/genui-sdk-materials-vue-opentiny-vue |
materials, miniMaterials, plusMaterials, materialsMeta, miniMaterialsMeta, plusMaterialsMeta |
Unified entry |
.../materials |
materials, miniMaterials, plusMaterials |
Inject into ConfigProvider for schema rendering |
.../meta |
materialsMeta, miniMaterialsMeta, plusMaterialsMeta |
For genPrompt() / building the server system prompt |
Tiering
| Tier | Positioning | Typical pages |
|---|---|---|
| Mini | Lightweight form / info blocks | Simple forms, card details |
| Standard | Data display & analytics | List + pager, charts, tabbed detail |
| Plus | Full business application pages | Admin, org/permission, approval, portal |
materials / miniMaterials / plusMaterials
Component registry mapping OpenTiny Vue components, used by the renderer to resolve nodes by componentName.
materialsMeta / miniMaterialsMeta / plusMaterialsMeta
Materials metadata, including:
materials: Protocol descriptions for components / blocks / snippetswrapperComponent: Default wrapper component (TinyCard)whiteList: Whitelist ofcomponentNamevalues available to the LLMexamples: Prompt example schemas (form / info / grid / tabs)rules: Extra constraint rules
Component library: @opentiny/vue-*.
More
Related Packages
GenUI SDK integration skill for AI assistants (Vue, Angular, React, Server)
GistUI for Vue 3.5+: a component that renders streamed GistUI programs, with the...
A Vue3 component library for enhanced LLM display and interaction
TinyEngine enables developers to customize low-code platforms, build low-bit pla...
An enterprise-class UI component library, support both Vue.js 2 and Vue.js 3, as...
Version History
| Version | Released | Vue | License |
|---|---|---|---|
| 1.4.0 | ^3.5.13 | MIT | |
| 1.3.0 | ^3.5.13 | MIT |
Pre-releases (10)
| Version | Released | Vue | License |
|---|---|---|---|
| 1.4.0-beta.1 | ^3.5.13 | MIT | |
| 1.4.0-alpha.5 | ^3.5.13 | MIT | |
| 1.4.0-alpha.4 | ^3.5.13 | MIT | |
| 1.4.0-alpha.3 | ^3.5.13 | MIT | |
| 1.3.0-beta.1 | ^3.5.13 | MIT | |
| 1.3.0-alpha.7 | ^3.5.13 | MIT | |
| 1.3.0-alpha.6 | ^3.5.13 | MIT | |
| 1.3.0-alpha.5 | ^3.5.13 | MIT | |
| 1.3.0-alpha.4 | ^3.5.13 | MIT | |
| 1.3.0-alpha.3 | ^3.5.13 | MIT |