LIVE
Новость

Swift Chat: готовая библиотека SwiftUI с интерфейсом в стиле iMessage

Студия Union St под руководством Бена Сейджа открыла исходники Swift Chat — SwiftUI-библиотеки, которая воспроизводит ключевые элементы интерфейса iMessage.

Ратмир Чеботарев·обновлено 14 сентября 2026 г.

Swift Chat: готовая библиотека SwiftUI с интерфейсом в стиле iMessage

SwiftUI-«клон iMessage» одним пакетом: что получит разработчик

Проект лежит на GitHub, бесплатен для коммерческого использования и поддерживает iOS 18 и новее, Xcode 16, Swift 6.1. Для мобильной разработки это редкий случай: готовый, а не «вот вам пара вьюх, допилите сами».

Почему библиотека вообще появилась

По словам автора, история началась с сервиса персональной охраны Protector: заказчику потребовался встроенный чат, максимально похожий на iMessage. Следом с аналогичным запросом пришли представители Polymarket. Сейдж решил не повторять одну и ту же работу дважды и за ~год собрал универсальный набор компонентов — так появился Swift Chat. Подход прагматичный: вместо очередного «фреймворка ради фреймворка» — библиотека под конкретный, дважды подтверждённый запрос.

Что внутри и где придётся терпеть

В библиотеке не только базовые «пузыри» сообщений: есть анимированные индикаторы набора текста, статусы отправки и прочтения, реакции, групповые чаты с группировкой, вложения — изображения, видео, аудио, файлы, геолокация, опросы. Дополнительно — интерактивное скрытие клавиатуры и физика прокрутки, повторяющая поведение приложений Apple.

Самое интересное — внутри Swift Chat Сейдж миксует SwiftUI и UIKit: рендер сообщений идёт через UICollectionView, наружу библиотека отдаёт чистый SwiftUI API. Логика понятна — часть поведения iMessage на чистом SwiftUI просто не воспроизводится, и без UIKit-«прослойки» получился бы очередной «похожий, но не тот» чат. Для интегратора это сигнал: под капотом — гибрид, и при тонкой кастомизации стоит быть готовым копаться в обеих технологиях.

Лицензия и что с этим делать

Swift Chat можно бесплатно подключать к любым приложениям, включая коммерческие. Ограничения стандартные для нишевых open-source-проектов: запрещена декомпиляция и распространение библиотеки в составе других SDK. То есть собрать свой «мессенджер-конструктор» на её базе и перепродавать как набор — нельзя, а встроить в свой продукт — можно.

Для практики вывод простой: если в проде уже зреет задача «чатик в стиле iMessage, и вчера», стоит как минимум проверить Swift Chat на прототипе. С учётом того, что автор честно признаёт гибрид SwiftUI + UIKit и закрытость части поведения «нативными» средствами, — это рабочий инструмент, а не маркетинговая обёртка. Внедрять без ревью архитектуры, впрочем, не стоит: гибридный рендер — это и контроль над UX, и потенциальный источник багов при обновлениях iOS.