vauchi/core

GitHub: vauchi/core

Vauchi 是一个用 Rust 编写的隐私优先联系人交换平台核心库,通过端到端加密和去中心化架构实现联系人信息的实时安全同步。

Stars: 0 | Forks: 0

[![Pipeline](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/pipeline.json&label=pipeline)](https://gitlab.com/vauchi/core/-/pipelines) [![Coverage](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/coverage.json&label=coverage)](https://gitlab.com/vauchi/core/-/pipelines) [![REUSE](https://api.reuse.software/badge/gitlab.com/vauchi/core)](https://api.reuse.software/info/gitlab.com/vauchi/core) # Vauchi 一个注重隐私的联系 [![流水线](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/pipeline.json&label=pipeline)](https://gitlab.com/vauchi/core/-/pipelines) [![覆盖率](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/coverage.json&label=coverage)](https://gitlab.com/vauchi/core/-/pipelines) [![REUSE](https://api.reuse.software/badge/gitlab.com/vauchi/core)](https://api.reuse.software/info/gitlab.com/vauchi/core) # Vauchi 一个注重 [![Pipeline](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/pipeline.json&label=pipeline)](https://gitlab.com/vauchi/core/-/pipelines) [![Coverage](https://img.shields.io/endpoint?url=https://vauchi.gitlab.io/core/badges/coverage.json&label=coverage)](https://gitlab.com/vauchi/core/-/pipelines) [![REUSE](https://api.reuse.software/badge/gitlab.com/vauchi/core)](https://api.reuse.software/info/gitlab.com/vauchi/core) # Vauchi 一个注重隐私的联系方式交换平台 始终保持最新状态。 ## 问题所在 当你与他人交换联系方式时,这些 信息会在你们任何一方 更改电话号码、电子邮件、社交媒体或 地址的那一刻起变得过时。你最终只会留下过期的联系人,并且 人们会失去联系。 更糟糕的是,社交媒体平台通过 隐性地威胁用户如果离开就会失去其联系人来 留住他们。你的人际关系被锁定在 你可能不再想使用的平台中。 ## 解决方案 Vauchi 让你交换“活的”联系人名片。当你 更新你的信息时,所有与你共享过信息的联系人都会 自动收到更新——安全且私密。 ## 核心原则 - **当面交换** - 联系人名片只能在 物理上在一起时交换(扫描二维码) - **选择性共享** - 控制哪些联系人可以看到 哪些字段(工作邮箱 vs 个人邮箱) - **无消息功能** - 这不是即时通讯工具;它只同步联系人信息 - **端到端加密** - 没有服务器可以读取你的数据 - **去中心化** - 中继服务器只传递加密的 数据块;它们对此一无所知 ## 开发 ### 前置条件 - Rust 1.78+(见 `rust-toolchain.toml`) - 移动端:UniFFI,Swift/Xcode (iOS),Kotlin/Gradle (Android) - 桌面端:Node.js,pnpm,Tauri 前置条件 ### 命令 ``` cargo test # All tests cargo test -p vauchi-core # Core only cargo clippy -- -D warnings # Lint cargo fmt # Format ``` ### ⚠️ 强制性开发规则 **TDD**:红→绿→重构。测试优先,否则删除代码重新开始。 1. 编写失败的测试(红) 2. 编写最少量的代码以通过测试(绿) 3. 重构 4. 测试需追溯至 `features/*.feature` Gherkin 场景 **结构**:`src/` = 仅限生产代码。`tests/` = 仅限测试。两者平级,不可嵌套。 ## 文档 - **架构**:[vauchi/docs](https://gitlab.com/vauchi/docs) 仓库 - **API 参考**:从代码注释生成 - **BDD 场景**:`../features/`(独立仓库) ## 移动端开发 `vauchi-platform` crate 会生成 UniFFI 绑定,供以下平台使用: - **Android**:克隆 [vauchi/android](https://gitlab.com/vauchi/android),运行 `./gradlew build` - **iOS**:克隆 [vauchi/ios](https://gitlab.com/vauchi/ios),在 Xcode 中打开 请参阅各平台仓库以获取详细的设置说明。 ## 支持本项目 Vauchi 是开源的,并由社区资助——没有风险投资,没有数据收割。 - [GitHub 赞助](https://github.com/sponsors/vauchi) - [Liberapay](https://liberapay.com/Vauchi/donate) - [支持者](https://docs.vauchi.app/about/supporters/) 了解赞助层级 ## 许可证 GPL-3.0-or-later
标签:Kotlin, MITM代理, P2P, Rust, Swift, Tauri, UniFFI, 二维码, 加密协议, 去中心化, 可视化界面, 地址簿, 安全通信, 密码学, 开源库, 手动系统调用, 搜索引擎爬虫, 数据模型, 端到端加密, 网络安全, 网络流量审计, 联系方式, 身份同步, 选择性共享, 通知系统, 隐私保护