Запускатель iOS-приложений, который запускает IPA внутри себя без установки и поддерживает несколько контейнеров данных для каждого приложения.
pointfreeco/swift-composable-architecture
Библиотека Swift для разработки приложений на платформах Apple с согласованным управлением состоянием, композиционными функциями, контролем побочных эффектов и широкими возможностями тестирования.
- Звёзды
- 14,979
- Форки
- 1,678
- Открытые issues
- 26
- Последний коммит
- 14 дней назад
Что это?
Composable Architecture (TCA) — библиотека Swift для последовательной и удобной для тестирования разработки приложений. В её основе — функция со State, Action, Reducer, который изменяет состояние и возвращает эффекты, и Store, который выполняет логику и управляет интерфейсом в SwiftUI или UIKit.
Крупные функции можно разбивать на небольшие изолированные компоненты, а затем собирать обратно. Это позволяет создавать модульные кодовые базы с несколькими целями Xcode или пакетами Swift. Побочные эффекты, например сетевые запросы, редьюсеры возвращают в виде значений, поэтому в тестах их можно заменить mock-зависимостями. В библиотеку входит TestStore: он позволяет пошагово проверять изменения состояния при отправке действий и возврате данных через эффекты.
Проект поддерживает iOS, macOS, iPadOS, visionOS, tvOS и watchOS. В него также входят примеры приложений — Todos, Tic-Tac-Toe, Voice Memos и SyncUps — и документация со статьями о навигации, зависимостях и тестировании.
Ключевые возможности
- 01Представляет состояние функции простыми типами-значениями, а обновляет его в ответ на Action.
- 02Позволяет собирать крупные функции из небольших редьюсеров, которые можно размещать в отдельных модулях.
- 03Редьюсеры возвращают побочные эффекты, поэтому в тестах их можно подменять.
- 04Предоставляет TestStore для пошаговых проверок состояния и эффектов.
- 05Включает систему зависимостей для внедрения рабочих и тестовых реализаций.
- 06Работает со SwiftUI и UIKit на платформах Apple.
Сценарии использования
- Разработка приложения для iOS на SwiftUI с множеством экранов, использующих общее состояние.
- Разбиение крупного проекта Xcode на модули функций с чёткими границами.
- Написание модульных и интеграционных тестов для логики приложения с сетевыми запросами.
- Постепенный переход приложения на UIKit к однонаправленной архитектуре, удобной для тестирования.
Быстрый старт
- 1
Добавьте зависимость пакета в Xcode или Package.swift
- 2
Импортируйте библиотеку в код
import ComposableArchitecture - 3
Определите @Reducer с State, Action и body, затем создайте Store в приложении
Что важно знать
- Поддерживаются только платформы Apple (iOS, macOS, iPadOS, visionOS, tvOS, watchOS).
- Чтобы пользоваться библиотекой естественно, сначала нужно освоить её собственные понятия (state, actions, reducers, effects, stores).
Темы
Частые вопросы
- Что такое swift-composable-architecture?
- Библиотека Swift для разработки приложений на платформах Apple с согласованным управлением состоянием, композиционными функциями, контролем побочных эффектов и широкими возможностями тестирования. Composable Architecture (TCA) — библиотека Swift для последовательной и удобной для тестирования разработки приложений. В её основе — функция со State, Action, Reducer, который изменяет состояние и возвращает эффекты, и Store, который выполняет логику и управляет интерфейсом в SwiftUI или UIKit.
- swift-composable-architecture можно использовать бесплатно? Какая у него лицензия?
- swift-composable-architecture распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- swift-composable-architecture всё ещё поддерживается?
- Активно поддерживается. Последний коммит в swift-composable-architecture — 6 окт. 2026 г..
- Для чего можно использовать swift-composable-architecture?
- Разработка приложения для iOS на SwiftUI с множеством экранов, использующих общее состояние. Разбиение крупного проекта Xcode на модули функций с чёткими границами. Написание модульных и интеграционных тестов для логики приложения с сетевыми запросами. Постепенный переход приложения на UIKit к однонаправленной архитектуре, удобной для тестирования.
- Как установить swift-composable-architecture?
- Добавьте зависимость пакета в Xcode или Package.swift Импортируйте библиотеку в код: import ComposableArchitecture Определите @Reducer с State, Action и body, затем создайте Store в приложении
- Где скачать swift-composable-architecture?
- Исходный код и инструкции по установке — на GitHub: https://github.com/pointfreeco/swift-composable-architecture
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Нативный видеоклиент для iOS и tvOS, подключающийся к медиасерверу Jellyfin и написанный на Swift и SwiftUI.
Навык для AI-ассистентов разработчика, который учит Claude Code, Codex и другим инструментам писать современный и корректный код на SwiftUI.
Набор инструментов для отладки iOS-приложений прямо в приложении: плавающее меню помогает проверять сетевой трафик, производительность, представления, логи и данные приложения.
Приложение для работы с документами и чатом на macOS и iOS: загружайте файлы и задавайте вопросы, а вся обработка ИИ выполняется на устройстве с помощью Apple Foundation Models.
Официальный исходный код приложения Telegram для iOS с системой сборки для самостоятельной компиляции в Xcode.