📌 项目地址:penpot/penpot | ⭐ 49,993 颗星 | 🔧 Clojure | 📜 未标注
它解决了什么核心问题?
在设计工具领域,Figma 几乎成了代名词,但它的商业模式决定了设计数据和基础设施始终掌握在第三方手中。对于需要严格合规、数据主权或定制化需求的企业来说,这意味着风险。Penpot 的出发点就是提供完全自主可控的设计基础设施:开源、可自托管、基于开放标准(SVG、CSS、HTML、JSON),让团队在设计环境上拥有完整的控制权。
与此同时,设计稿与代码之间的鸿沟一直是协作痛点。Penpot 的设计理念是“以代码表达设计”,原生支持 CSS Grid 和 Flex Layout,设计出来的界面从第一天起就是响应式的。再加上 Design Tokens(设计令牌)和 MCP 服务器(一种多方向工作流协议),设计系统可以成为设计与开发之间的单一事实源,甚至能实现 AI 驱动的工作流。
核心能力拆解
1. 开源 + 自托管
Penpot 采用 Mozilla Public License 2.0 协议,代码完全开放。你可以部署在自己的服务器上,甚至离线使用。这对于金融、政府、医疗等受监管行业尤为重要。
2. 实时协作
浏览器原生工作,无需安装客户端,多成员可同时编辑同一文件,变更实时同步。
3. 基于开放标准
导出的是纯 SVG/JSON,CSS 属性可以直接被开发者理解,无需额外转换工具。
4. Design Tokens(设计令牌)
集中管理颜色、间距、字体等设计原子,修改一个令牌即可全局生效。这是大型设计系统的一致性和可维护性关键。
5. MCP 服务器(多方向工作流协议)
允许设计、代码、AI 之间双向交互。例如,你可以通过 API 让 AI 将设计稿解析为代码框架,或将代码中的样式变化同步回设计文件。
6. 可编程性
提供开放的 API 和插件系统,可以编写自动化脚本、接入 CI/CD 流水线,或集成 Figma/其他工具的迁移脚本。
7. CSS Grid 与 Flex Layout
设计时直接使用 CSS 的布局模型,生成的代码不需要二次适配,开发者拿到的就是生产级结构。
如何开始使用?
Penpot 提供了两种方式:
- 云端直接使用:访问 penpot.app 注册账号即可,不需要任何本地环境。
- 自托管部署:参考官方文档 Self-hosting 指南。由于 README 未给出具体命令,部署方式需查阅技术手册。大致需要 Docker 或 Kubernetes 环境,项目提供镜像和 docker-compose 配置。
如果你是开发者想体验设计令牌或 MCP 服务器,可以阅读:
– Design Tokens 文档
– MCP 快速入门
它与同类工具的核心区别
| 维度 | Penpot | Figma / Sketch |
|---|---|---|
| 许可证 | MPL-2.0(开源) | 专有软件 |
| 数据所有权 | 完全自控,可自托管 | 存储于 Figma 服务器 |
| 成本 | 社区版免费,企业支持需付费 | 按席位订阅,价格不低 |
| 标准格式 | 原生 SVG/CSS/HTML/JSON | 专有格式(.fig) |
| 代码友好度 | 布局模型即 CSS,可直接复制 | 需要插件或手动转换 |
| 设计令牌 | 原生支持,成为全局事实源 | 需第三方工具或插件 |
Penpot 不适合那些只想用最快方式出图的个人设计师——它的学习曲线略高于 Figma,尤其是布局和令牌系统。但对需要构建和维护可扩展设计系统的团队,以及注重数据安全和长期成本的企业,Penpot 的自由度是无可替代的。
注意事项
- 许可证:MPL-2.0 是弱传染性许可证,如果对 Penpot 本身做了修改并发布,需要公开修改后的源码;但仅仅作为工具使用不受影响。
- 生态环境:虽然插件系统和 API 在快速扩展,但与 Figma 社区的海量插件相比仍有差距。如果你依赖 Figma 的某些高级第三方插件,迁移前需确认是否有替代方案。
- 性能:大型文件(数千图层)在浏览器中的性能可能略逊于原生客户端,但 Penpot 团队持续优化中。
- 商业支持:Penpot 提供付费企业支持(联系官网“talk to us”),适合规模化团队的生产环境部署。
总结
Penpot 不是一个“开源版 Figma”那么简单。它从架构底层选择了开放协议和代码可读性,让设计真正融入开发流程,而不是成为孤立的上游。如果你的团队正在寻找一个拥有完整数据主权、能与代码直接对话、且支持 AI 接入的设计平台,Penpot 值得深入试用。