一款去中心化聊天应用,离线时通过蓝牙 mesh 组网,联网时经 Nostr 中继通信,无需账号或手机号。
exyte/Chat
一个 iOS SwiftUI 聊天界面框架,支持自定义消息单元和内置媒体选择器。
- Star
- 1,893
- Fork
- 341
- 未关闭 Issue
- 0
- 最近提交
- 20天前
这是什么?
Chat 是一个 Swift 包,为 SwiftUI 应用提供开箱即用的聊天界面。它负责分页消息列表、输入栏和发送流程,网络请求与数据存储由应用自行实现。用户发送消息时,库会以草稿的形式回调应用的闭包,由应用决定如何投递。
消息气泡和输入视图都可以用 SwiftUI 自定义,同一个聊天中还能让自定义样式与默认样式混用。库内置消息菜单、长按上下文菜单和滑动操作,支持回复、编辑和删除。消息可包含富文本或 Markdown、图片和视频、语音录制、链接预览、Giphy 的 GIF 与贴纸、任意文件,以及静态位置或实时位置共享。
项目面向 iOS 17 及以上版本,通过 Swift Package Manager 分发,并附带 Firestore 与模拟机器人两个示例工程。
核心功能
- 01分页消息列表,发送时通过闭包交由应用处理网络请求
- 02通过 SwiftUI 视图构建器自定义消息单元和输入视图
- 03内置照片与视频选择器,支持多选和相机拍摄
- 04长按菜单支持回复、编辑和删除,可替换为自定义菜单
- 05支持文本、媒体、语音、带预览的链接、GIF、文件和位置消息
适用场景
- 为使用 SwiftUI 开发的 iOS 应用添加应用内消息功能
- 在已有后端之上搭建带自定义气泡样式的聊天界面
- 无需从零开发选择器,即可在对话中发送照片、视频和文件
- 在消息功能中实现用户之间的实时位置共享
快速上手
- 1
通过 Swift Package Manager 使用仓库地址添加依赖
- 2
导入 ExyteChat 并用你的消息创建 ChatView
使用前须知
- 仅支持 iOS,基于 SwiftUI 构建。
- CocoaPods 支持在 2.4.2 版本后已弃用。
标签
常见问题
- Chat 是什么?
- 一个 iOS SwiftUI 聊天界面框架,支持自定义消息单元和内置媒体选择器。 Chat 是一个 Swift 包,为 SwiftUI 应用提供开箱即用的聊天界面。它负责分页消息列表、输入栏和发送流程,网络请求与数据存储由应用自行实现。用户发送消息时,库会以草稿的形式回调应用的闭包,由应用决定如何投递。
- Chat 可以免费使用吗?用的什么许可证?
- Chat 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- Chat 还在维护吗?
- 活跃维护中。Chat 最近一次提交是在 2026年10月1日。
- Chat 适合用来做什么?
- 为使用 SwiftUI 开发的 iOS 应用添加应用内消息功能 在已有后端之上搭建带自定义气泡样式的聊天界面 无需从零开发选择器,即可在对话中发送照片、视频和文件 在消息功能中实现用户之间的实时位置共享
- Chat 怎么安装和运行?
- 通过 Swift Package Manager 使用仓库地址添加依赖 导入 ExyteChat 并用你的消息创建 ChatView
- 在哪里获取 Chat?
- 源代码和安装说明在 GitHub 上:https://github.com/exyte/Chat
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
3.7万5834SwiftUnlicense更新于 3天前
一个用于构建 Apple 平台应用的 Swift 库,提供统一的状态管理、可组合的功能模块与便于测试的副作用处理。
1.5万1678SwiftMIT更新于 15天前
一款 iOS 应用启动器,无需安装即可在其中运行 IPA 应用,并支持每个应用多个数据容器。
1.3万1196SwiftAGPL-3.0更新于 4天前
Telegram 官方 iOS 客户端源代码,附带可在 Xcode 中自行编译的构建系统。
92933085Swift无许可证更新于 13天前
为 Xcode 提供 GitHub Copilot 支持的 AI 编程助手,涵盖代码补全、对话与 Agent 模式。
63482064SwiftMIT更新于 前天
一个为 Claude Code、Codex 等 AI 编程助手准备的智能体技能,帮助其写出更现代、正确的 SwiftUI 代码。
6245236MIT更新于 5天前