Hacker News 中文摘要

RSS订阅

JMAP 现已支持日历、联系人和文件功能 -- JMAP for Calendars, Contacts and Files Now in Stalwart

文章摘要

经过四年开发,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 中,导致客户端与服务器间兼容性挑战。同样,iCalendarvCard 虽功能丰富,但积累了过多冗余属性,解析复杂度高。

JMAP 的现代化解决方案

JMAP 协议最初作为 IMAP 和 SMTP 的高效替代方案,其优势在于基于 HTTPS 的 JSON 传输。如今扩展至日历、联系人、文件和共享领域,实现了 DAV 未能达成的目标:为所有个人和群组数据提供统一、易用的 API。配套的 JSCalendarJSContact 采用简洁的 JSON 格式,提升可读性和解析效率,完美适配现代应用需求。

行业意义

此次发布标志着群件协议设计的范式转变。开发者首次能够基于单一、连贯的 JSON 框架构建邮件、日历、联系人及共享资源系统,有望大幅降低实现难度,提升互操作性,推动行业创新。

客户端生态进展

目前,MailtemiParulaOpenCloud 等客户端已开始适配新协议。随着开发者体验 JMAP 的优势,生态预计将快速扩展。

致谢与展望

项目感谢 NLNet 通过 NGI Zero 资助计划的支持。Stalwart 现已实现全部核心功能,团队正聚焦数据库优化性能提升,计划在未来数月推出稳定的 1.0.0 版本,树立开放通信服务器的新标杆。

这仅仅是一个开始。

评论总结

评论总结:

  1. 对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)
  1. 自建邮件服务器的体验
  • 积极评价:"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)
  1. 商业解决方案推荐
  • Nylas推荐:"Nylas might be a viable option...remarkably powerful"(评论4)
  • 价格考量:"at $1.50/connected account/month...likely material to your per-user margin"(评论4)
  1. 对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)
  1. 协议设计讨论
  • 效率考量:"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引用)