探索创新:Windows社区工具包实验室(预览版)🚀

欢迎来到Windows社区工具包实验室——一个用于开发新组件的实验场,基于WinUI 2、WinUI 3和Uno平台构建!欲了解关于工具包实验室更多信息,请参阅我们的博客文章。文章详细介绍了创建这个空间的初衷以及如何设置必要的NuGet源以方便使用本仓库中的实验特性。
这里是所有新功能进入Windows社区工具包的起点,也是进行原型设计和合作完善特性的理想场所。这使得当特性准备好后,最终将其合并到主工具包仓库可以尽可能地顺利。
开始使用
立即在浏览器中尝试我们的示例应用程序!
您可以在我们的Azure DevOps Feed中找到相应的CommunityToolkit.Labs包,了解更多关于预览包的信息:
如果您发现某个实验有用,请对对应的议题点赞👍并发表反馈。每个实验都有一个带有“experiment”标签的议题用于跟踪。其他任何问题或疑虑,都可开启讨论。
或者,您可以克隆仓库,打开components目录,导航至特定实验的文件夹并打开其解决方案文件,在Visual Studio中运行其中一个项目头(ExperimentName.Uwp/Wasm/WinAppSDK)来查看其示例。
克隆仓库
工具库在子模块中,首次克隆或拉取时需使用--recurse-submodules:
git clone --recurse-submodules https://github.com/CommunityToolkit/Labs-Windows.git
构建要求
- Visual Studio 2022(UWP 和桌面.NET工作负载)
- .NET 6 SDK
- Windows App SDK
- Windows SDK 19041
- 运行
dotnet tool restore从项目根目录安装SlnGen - 在开发者命令提示符中运行构建脚本(如Visual Studio中)
添加新的实验
注:目前只接受预先试验列表之外的贡献者,确保我们的基础设施稳定。如果您想贡献力量,但不知从何入手,请在此处查看可用任务。如果有关于组件的想法,请在这里开启讨论
要启动新的实验,首先在一个新的讨论中提出您的想法与社区共享。确保遵循模板,并阐述为什么以及如何帮助其他开发人员。
一旦有进展并且您的想法被批准,将会创建一个议题追踪您的实验及其进度。
然后您可以fork该仓库,创建一个新的分支,开始编写您的特性(或将现有原型移植过来)。
dotnet new --install .\tooling\ProjectTemplate\
cd components
dotnet new ctk-component -n 我的实验名称
然后提交PR,不必一开始就完成所有工作,但应提供基本功能和使用示例。实验室是一个逐步改进的好地方,您可以在这里获取社区反馈并与他人协作。但是,您的初始PR应该能够编译并有足够的内容供其他人理解如何利用您的组件。
修改实验
首先,fork仓库并为您的修改创建一个新的分支。
要修改实验,导航到其子目录并打开其自身的解决方案文件。这样可以让您独立地处理该组件的功能、示例、文档和单元测试。
然后向仓库提交您的修改。实验的所有者可以与您一起集成变更。维护者会在获得实验所有者的批准后合并PR。
实验何时完成?
并非所有实验都能成功,而那也没关系,因为我们在实验!👨🔬🔬👩🔬
如果有足够的兴趣,那么实验就可以转移到主要的Windows社区工具包仓库中。这些实验应实现所有必需的组件,如示例、文档和单元测试。
在主要工具包仓库中使用“工具包实验室转移”议题模板打开一个议题。(待更新链接)使用该议题讨论新组件应在工具包中的何处放置,以及它将在哪个版本中发布。也将进行初步代码审查。议题获得批准后,打开一个PR将实验复制到其新家。
构建样例应用
首先确保满足构建要求,否则构建脚本会失败。
接下来,运行仓库根目录下的GenerateAllSolution.bat脚本来生成所有解决方案。
然后只需在Visual Studio中打开CommunityToolkit.AllComponents.sln解决方案,就可以运行适用于不同平台的示例应用,如CommunityToolkit.App.WinAppSdk。
如果您想运行除UWP、Wasm或WinAppSDK之外的项目头部,先运行tooling/MultiTarget目录中的UseTargetFrameworks.ps1脚本。例如:.\UseTargetFrameworks.ps1 -targets all
如果希望在Uno + Windows App SDK上测试,而不是Uno + UWP,运行UseUnoWinUI.ps1脚本。例如:.\UseUnoWinUI.ps1 -targets 3
如果您仅关注特定实验,可以导航到其目录并打开它的单独解决方案,查看特定功能的示例。您还可以通过以下部分了解如何获取本实验室中可用的每个功能的预建NuGet包。
行为准则
该项目已采用贡献者公约定义的行为准则,以明确我们社区期望的行为。 更多信息见.NET基金会行为准则。
.NET 基金会支持
该项目由.NET基金会支持。
致谢贡献者
借助了contrib.rocks制作。
Windows社区工具包实验室是一个独特的资源,为开发者提供了在安全环境中尝试新功能的机会,同时也鼓励社区参与和贡献。无论您是寻求创新的解决方案,还是想要展示自己的技能,这里都是理想之地。所以,加入我们,探索无限可能!
ERNIE-4.5-VL-28B-A3B-ThinkingERNIE-4.5-VL-28B-A3B-Thinking 是 ERNIE-4.5-VL-28B-A3B 架构的重大升级,通过中期大规模视觉-语言推理数据训练,显著提升了模型的表征能力和模态对齐,实现了多模态推理能力的突破性飞跃Python00
Kimi-K2-ThinkingKimi K2 Thinking 是最新、性能最强的开源思维模型。从 Kimi K2 开始,我们将其打造为能够逐步推理并动态调用工具的思维智能体。通过显著提升多步推理深度,并在 200–300 次连续调用中保持稳定的工具使用能力,它在 Humanity's Last Exam (HLE)、BrowseComp 等基准测试中树立了新的技术标杆。同时,K2 Thinking 是原生 INT4 量化模型,具备 256k 上下文窗口,实现了推理延迟和 GPU 内存占用的无损降低。Python00
MiniMax-M2MiniMax-M2是MiniMaxAI开源的高效MoE模型,2300亿总参数中仅激活100亿,却在编码和智能体任务上表现卓越。它支持多文件编辑、终端操作和复杂工具链调用Python00
HunyuanVideo-1.5暂无简介00
MiniCPM-V-4_5MiniCPM-V 4.5 是 MiniCPM-V 系列中最新且功能最强的模型。该模型基于 Qwen3-8B 和 SigLIP2-400M 构建,总参数量为 80 亿。与之前的 MiniCPM-V 和 MiniCPM-o 模型相比,它在性能上有显著提升,并引入了新的实用功能Python00
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00