Adaptive Cards 开源项目教程
1. 项目介绍
Adaptive Cards 是由微软开发的一个开源项目,旨在为开发者提供一种通用的方式来交换卡片内容。这些卡片内容以 JSON 格式编写,可以在不同的应用和服务之间进行交换。Adaptive Cards 的主要目标是确保卡片在不同平台和框架上的呈现方式一致,从而提高用户体验。
Adaptive Cards 支持多种平台,包括但不限于 Microsoft Teams、Outlook Actionable Messages、Cortana Skills 和 Windows Timeline。开发者可以使用 Adaptive Cards 的 SDK 将这些卡片嵌入到自己的应用中。
2. 项目快速启动
安装
首先,确保你已经安装了 Node.js 和 npm。然后,通过 npm 安装 Adaptive Cards:
npm install adaptivecards
创建一个简单的 Adaptive Card
以下是一个简单的 Adaptive Card 示例,使用 JSON 格式编写:
{
"type": "AdaptiveCard",
"version": "1.0",
"body": [
{
"type": "TextBlock",
"text": "Hello, Adaptive Cards!"
}
]
}
渲染 Adaptive Card
使用 JavaScript 渲染上述 Adaptive Card:
const AdaptiveCards = require('adaptivecards');
// 创建一个 Adaptive Card 实例
let card = new AdaptiveCards.AdaptiveCard();
// 解析 JSON 并加载到卡片中
card.parse({
type: "AdaptiveCard",
version: "1.0",
body: [
{
type: "TextBlock",
text: "Hello, Adaptive Cards!"
}
]
});
// 渲染卡片
let renderedCard = card.render();
// 将渲染后的卡片添加到 DOM 中
document.body.appendChild(renderedCard);
3. 应用案例和最佳实践
应用案例
-
Microsoft Teams 中的通知卡片:Adaptive Cards 可以用于在 Microsoft Teams 中创建自定义通知卡片,提供更丰富的信息展示和交互体验。
-
Outlook Actionable Messages:通过 Adaptive Cards,开发者可以在 Outlook 中创建可操作的消息卡片,用户可以直接在邮件中进行操作,如批准或拒绝请求。
-
Cortana Skills:Adaptive Cards 可以用于在 Cortana 中创建交互式卡片,提供更直观的用户界面。
最佳实践
-
保持卡片简洁:Adaptive Cards 的设计应尽量简洁,避免过多的内容和复杂的布局,以确保在不同设备上的良好显示效果。
-
使用一致的样式:在设计卡片时,应保持一致的样式和颜色方案,以提高用户体验。
-
测试多平台兼容性:在发布卡片之前,务必在多个平台上进行测试,确保卡片在不同设备和应用中的显示效果一致。
4. 典型生态项目
1. Microsoft Teams
Microsoft Teams 是 Adaptive Cards 的主要应用场景之一。开发者可以使用 Adaptive Cards 在 Teams 中创建自定义的通知、任务卡片等,提供更丰富的交互体验。
2. Outlook Actionable Messages
Outlook Actionable Messages 允许开发者通过 Adaptive Cards 创建可操作的邮件卡片,用户可以直接在邮件中进行操作,如批准或拒绝请求。
3. Cortana Skills
Cortana Skills 可以使用 Adaptive Cards 创建交互式卡片,提供更直观的用户界面,增强用户与 Cortana 的互动体验。
4. Windows Timeline
Windows Timeline 支持 Adaptive Cards,开发者可以创建自定义的卡片,展示用户在不同设备上的活动记录。
通过以上模块的介绍,开发者可以快速上手 Adaptive Cards 项目,并在实际应用中发挥其强大的功能。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0220- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
AntSK基于.Net9 + AntBlazor + SemanticKernel 和KernelMemory 打造的AI知识库/智能体,支持本地离线AI大模型。可以不联网离线运行。支持aspire观测应用数据CSS01