文章摘要
经过四年开发,Stalwart Labs宣布其产品Stalwart成为首个完整支持JMAP协作协议套件的服务器,包括日历、联系人、地址簿、文件存储和共享功能。这标志着开放、高效、优雅的群件新时代的到来,取代了传统的CalDAV和CardDAV协议。
文章总结
标题:Stalwart Labs 全面支持 JMAP 日历、联系人和文件协议
经过四年的开发,Stalwart 迎来重大里程碑——完整实现了 JMAP 日历、联系人、通讯录、文件存储及共享协议。此次发布使 Stalwart 成为首个全面支持 JMAP 协作协议家族的服务器,标志着开放、高效、优雅的群件新时代的到来。
新一代协议标准
近年来,IETF 重新定义了电子邮件、日历和联系人的同步与共享方式。在 JMAP 邮件协议成功的基础上,新增了以下扩展协议: - JMAP 日历协议:取代 CalDAV 和 CalDAV 日程安排 - JMAP 联系人协议:替代 CardDAV - JMAP 文件存储协议:取代基于 WebDAV 的文件存储 - JMAP 共享协议:WebDAV ACL 的现代继任者 - JSCalendar:基于 JSON 的 iCalendar 革新版 - JSContact:vCard 的现代化 JSON 版本
这些标准共同构建了统一、优雅的生态系统,取代了碎片化的传统 WebDAV 技术。
传统技术的局限性
尽管 WebDAV 及其衍生协议(如 CalDAV、CardDAV)具有广泛适用性,但其基于 XML 的设计存在冗长、不一致和实现困难等问题。数据分散在 HTTP 头、XML 负载和嵌入式 iCalendar 中,导致客户端与服务器间兼容性挑战。同样,iCalendar 和 vCard 虽功能丰富,但积累了过多冗余属性,解析复杂度高。
JMAP 的现代化解决方案
JMAP 协议最初作为 IMAP 和 SMTP 的高效替代方案,其优势在于基于 HTTPS 的 JSON 传输。如今扩展至日历、联系人、文件和共享领域,实现了 DAV 未能达成的目标:为所有个人和群组数据提供统一、易用的 API。配套的 JSCalendar 和 JSContact 采用简洁的 JSON 格式,提升可读性和解析效率,完美适配现代应用需求。
行业意义
此次发布标志着群件协议设计的范式转变。开发者首次能够基于单一、连贯的 JSON 框架构建邮件、日历、联系人及共享资源系统,有望大幅降低实现难度,提升互操作性,推动行业创新。
客户端生态进展
目前,Mailtemi、Parula 和 OpenCloud 等客户端已开始适配新协议。随着开发者体验 JMAP 的优势,生态预计将快速扩展。
致谢与展望
项目感谢 NLNet 通过 NGI Zero 资助计划的支持。Stalwart 现已实现全部核心功能,团队正聚焦数据库优化和性能提升,计划在未来数月推出稳定的 1.0.0 版本,树立开放通信服务器的新标杆。
这仅仅是一个开始。
评论总结
评论总结:
- 对JMAP协议的期待与质疑
- 正面期待:"if they pull out the AI stuff that'll be soooo cool"(评论1)
- 设计质疑:"Is there really any new-ish binary protocol these days?"(评论2)
- 自建邮件服务器的体验
- 积极评价:"It's such a breeze to self-host your own email server using Stalwart"(评论3)
- 生产环境验证:"Running Stalwart in production for ~20 heavily used accounts...no problems so far!"(评论6)
- 商业解决方案推荐
- Nylas推荐:"Nylas might be a viable option...remarkably powerful"(评论4)
- 价格考量:"at $1.50/connected account/month...likely material to your per-user margin"(评论4)
- 对JMAP生态的质疑
- 推广质疑:"A protocol I've never heard...was so successful, that it launched 6 new projects?"(评论5)
- 客户端支持不足:"We need better client support for JMAP"(评论7)
- 协议设计讨论
- 效率考量:"these things could be a lot more efficient and don't really need the overhead of JSON"(评论2)
- 替代方案:"modern replacement for CalDAV...alternative to CardDAV"(评论5引用)