2026 有趣的开源项目
CC(知识共享许可协议): BY(署名)-NC(非商业性)-SA(相同方式共享)
本文更多的是作为个人备忘录使用,随时更新。
AI
开源的 UI 设计工具,原生支持 AI
OpenPencil 实际使用下来的感受是,Demo Prompts 测试很惊艳,实际用到项目里就很拉胯了。尤其是当项目追求现代感、不同质、精巧的设计时,完全无法满足需求。大多数情况下只能做一些很传统的 UI。当然这并不单纯是 OpenPencil 的问题,我同时也尝试了 SuperDesign、闭源的 Pencil 和一些其他的工具。配合 GPT 5.4、Gemini 3.1 Pro、Minimax 2.7 等模型,基本上大差不差。
Native
将 Markdown 直接渲染为 PNG,不经过浏览器(例如:Puppeteer)
将 TS 直接编译为 Native 程序,使用原生 GUI 跨平台支持 macOS、iOS/iPadOS、tvOS、watchOS、Android、Windows、Linux、Web、WebAssembly
PerryTS 我还没有实际使用过,但是项目愿景很吸引我,而且痛点瞄的很准。
首先是现有的跨平台方案很难做到如此广泛的跨度。很多框架宣传上支持跨很多平台,但是实际项目里往往并没有人真的这么干。比如 React Native 或 Flutter 基本只用于 iOS 和 Android,很少应用到 Web 和桌面端。RN 有微软推出的 RN for macOS/windows,但真让我选我更愿意用 Electron 来开发桌面端应用。
其次就是项目体积和语言的问题。Electron 无疑是桌面端的最完善的解决方案,即便是微软都推荐和使用 Electron 开发系统级别的界面。但是他的体积和内存占用太让人头疼了。即便是最简单的 Hello World 都要 60MB 起步。随后我们迎来了 Tauri 使用 Rust + 利用系统 Webview 来实现桌面端,将构建体积缩减到 10MB左右。但是却要额外学习 Rust 语言(Golang 也有类似的方案)。如果不想学 Rust,确实还有一个不太有名的方案:NivaJS —— 通过 BOM 暴露系统级操作的 API,牺牲了一些安全性。但是截止目前已经 3 年没维护了,并且这些方案本质仍然是 Web 套壳,仍然没解决浏览器内核的内存占用问题。
但是 PerryTS 意图解决上述的所有问题,无需学另外一种语言,只有 TS。原生编译使用系统 UI,而非 Web 套壳。
微型的 JS 运行时,可以将 JS 构建为 5MB 左右的二进制程序。个人觉得非常适合用于 CLI,尤其是对比 Deno 和 Bun 这些方案的 SEA 构建往往都需要 20MB ~ 50MB