YSwift

该库构建于 Yrs 之上,提供 Swift 语言绑定,可以与其他 Yjs 实现无缝互操作。

该仓库正在开发中(WIP) 目前并非所有 Yrs 或 Yjs 的特性和功能都已公开。我们计划随着库的演进逐步添加它们。

该仓库包含两个 Swift 包

yniffiFFI 是一个静态二进制文件,打包为 lib 目录中的 XCFramework,使用 Rust 编译器构建,并使用 UniFFI 覆盖。YSwift 是一个覆盖层,提供更符合 Swift 语言习惯的操作。

要从源代码构建该包,您需要安装 Rust 和 XCode。 GitHub 版本应该包含指向 yniffiFFI 的版本链接。 开发版本期望您使用 ./scripts/build-xcframework.sh 构建您自己的本地副本。

决策日志

本项目维护一个 决策日志。 如果在某些实现细节的成因方面存在歧义,请查阅它。

许可证

本项目以 MIT 许可证 的条款作为开源项目提供。

感谢

感谢 Mozilla 的杰出人士在 UniFFI 上的出色工作,以及他们在 Swift 和 Kotlin 代码库中使用、打包和分发 Rust 代码方面所做的所有支持工作。