OSS TanbouSign in with GitHub

build composable SwiftUI and UIKit features around State, Action, Reducer, and Store

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
14,952
Primary language
Swift
License
MIT
Repository last updated
Sep 18, 2026
On this page

Overview

The Composable Architecture (TCA) is a Swift library for managing application state, user actions, side effects, and tests with one consistent model. Features are defined with @Reducer and @ObservableState, driven through Store, and composed into larger SwiftUI or UIKit applications.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Keep State, Action, and Reducer logic inside each feature domain

A feature uses @Reducer, an @ObservableState State type, an Action enum, and a Reduce body to describe state transitions and effects. UI events and business logic therefore follow one explicit domain model.

Sources: [2]

Drive runtime behavior and tests from the same reducer

SwiftUI views hold a StoreOf<Feature>, observe state, and send actions. TestStore can assert state changes and actions returned by effects step by step, including integration tests for composed features.

Sources: [2]

Best fit

Fits iOS applications that need feature modularity around complex state and side effects

It is especially useful when navigation, dependencies, asynchronous effects, and shared state need consistent conventions across a growing SwiftUI or UIKit application.

Sources: [2]

Before adoption

Version 1.26.2 uses Swift tools 6.4, iOS 16+, and includes traits for the path to 2.0

Package.swift for 1.26.2 uses Swift tools 6.4 and Swift 6 mode, with minimum platforms of iOS 16, macOS 13, tvOS 16, and watchOS 9. It also exposes ComposableArchitecture2Deprecations traits so teams can surface upcoming major-version migrations incrementally.

Sources: [3][4]

Official sources

  1. [1]pointfreeco/swift-composable-architecture — GitHub repository(2026-10-06)
  2. [2]Composable Architecture 1.26.2 — README(2026-10-06)
  3. [3]Composable Architecture 1.26.2 — Package.swift(2026-10-06)
  4. [4]Composable Architecture 1.26.2 release(2026-10-06)
  5. [5]Composable Architecture MIT license(2026-10-06)
Supplemental curator note

TCA fits SwiftUI and UIKit applications that need consistent conventions for complex state, navigation, dependencies, and asynchronous effects. Version 1.26.2 requires Swift tools 6.4 and iOS 16+, so check the project toolchain and deployment target first.

Try it in 3 steps

  1. 1

    Add ComposableArchitecture 1.26.2

    Pin the reviewed release. Version 1.26.2 uses Swift tools 6.4 and requires iOS 16 or newer.

    .package(url: "https://github.com/pointfreeco/swift-composable-architecture", exact: "1.26.2")
  2. 2

    Define a minimal reducer feature

    Follow the README Basic Usage pattern and keep State, Action, and Reducer in one feature domain.

    import ComposableArchitecture @Reducer struct CounterFeature { @ObservableState struct State: Equatable { var count = 0 } enum Action { case incrementButtonTapped } var body: some ReducerOf<Self> { Reduce { state, action in switch action { case .incrementButtonTapped: state.count += 1 return .none } } } }
  3. 3

    Create a Store and send an action

    Build the Store from the same reducer and verify the minimal action-to-state-update path.

    let store = Store(initialState: CounterFeature.State()) { CounterFeature() } store.send(.incrementButtonTapped)
Check the official README

Growth

Growth trends · Last 30 days

14,952 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
0
Open PRs
10

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • architecture
  • composition
  • modularity
  • testability
  • swiftui
  • uikit
Stars
14,952
Forks
1,679
Watchers
219
Open issues
15
Contributors
242
Owner type
Organization
Primary language
Swift
License
MIT
Repository last updated
Sep 18, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?