Repolode
exyte

exyte/Chat

Фреймворк UI чата на SwiftUI для iOS с настраиваемыми ячейками сообщений, встроенным выборщиком медиа и поддержкой текста, медиа, аудио, геолокации и документов.

Звёзды
1,893
Форки
341
Открытые issues
0
Последний коммит
20 дней назад

Что это?

Chat — это Swift-пакет с готовым экраном чата для приложений на SwiftUI. Он отвечает за список сообщений с пагинацией, панель ввода и отправку сообщений, а приложение предоставляет сетевое взаимодействие и хранение данных. Когда пользователь отправляет сообщение, библиотека вызывает замыкание с черновиком, а приложение решает, как его доставить.

Ячейки сообщений и представления для ввода можно заменить собственными SwiftUI-билдерами, а в одном чате — сочетать пользовательские ячейки со стилем по умолчанию. Библиотека поддерживает ответы, редактирование и удаление сообщений через меню, контекстное меню по долгому нажатию и действия при свайпе. Сообщения могут содержать форматированный текст или markdown, фото и видео, аудиозаписи, предпросмотр ссылок, GIF и стикеры через Giphy, произвольные файлы, а также статическую или текущую геолокацию.

Проект рассчитан на iOS 17 и новее и распространяется через Swift Package Manager. В README также приведены примеры проектов с Firestore и ботом-заглушкой.

Ключевые возможности

  • 01Список сообщений с пагинацией и замыканием для отправки, при этом сетевое взаимодействие остаётся на стороне приложения
  • 02Пользовательские ячейки сообщений и представления для ввода через SwiftUI-билдеры
  • 03Встроенный выборщик фото и видео с множественным выбором и доступом к камере
  • 04Ответы, редактирование и удаление сообщений через стандартное или пользовательское меню по долгому нажатию
  • 05Поддержка текста, медиа, аудио, ссылок с предпросмотром, GIF, документов и геолокации

Сценарии использования

  • Добавление экрана переписки в приложение для iOS на SwiftUI
  • Создание интерфейса чата с индивидуальным оформлением сообщений поверх уже существующего бэкенда
  • Отправка фото, видео и файлов в переписке без разработки собственного выборщика
  • Добавление обмена текущей геолокацией между пользователями в мессенджер

Быстрый старт

  1. 1

    Добавьте пакет через Swift Package Manager, указав URL репозитория

  2. 2

    Импортируйте ExyteChat и создайте ChatView со своими сообщениями

Что важно знать

  • Создано с использованием SwiftUI и поддерживает только iOS.
  • Поддержка CocoaPods устарела начиная с версии 2.4.2.

Темы

Частые вопросы

Что такое Chat?
Фреймворк UI чата на SwiftUI для iOS с настраиваемыми ячейками сообщений, встроенным выборщиком медиа и поддержкой текста, медиа, аудио, геолокации и документов. Chat — это Swift-пакет с готовым экраном чата для приложений на SwiftUI. Он отвечает за список сообщений с пагинацией, панель ввода и отправку сообщений, а приложение предоставляет сетевое взаимодействие и хранение данных. Когда пользователь отправляет сообщение, библиотека вызывает замыкание с черновиком, а приложение решает, как его доставить.
Chat можно использовать бесплатно? Какая у него лицензия?
Chat распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
Chat всё ещё поддерживается?
Активно поддерживается. Последний коммит в Chat — 1 окт. 2026 г..
Для чего можно использовать Chat?
Добавление экрана переписки в приложение для iOS на SwiftUI Создание интерфейса чата с индивидуальным оформлением сообщений поверх уже существующего бэкенда Отправка фото, видео и файлов в переписке без разработки собственного выборщика Добавление обмена текущей геолокацией между пользователями в мессенджер
Как установить Chat?
Добавьте пакет через Swift Package Manager, указав URL репозитория Импортируйте ExyteChat и создайте ChatView со своими сообщениями
Где скачать Chat?
Исходный код и инструкции по установке — на GitHub: https://github.com/exyte/Chat

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Библиотека Swift для разработки приложений на платформах Apple с согласованным управлением состоянием, композиционными функциями, контролем побочных эффектов и широкими возможностями тестирования.

15 тыс.1,7 тыс.SwiftMITОбновлён 15 дней назад