pointfreeco/swift-composable-architecture

A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.

View on GitHub ↗Jump to charts ↓Open shareable report →

pointfreeco/swift-composable-architecture has 14k+ stars and 1.5k+ forks on GitHub, is written in Swift, and was last pushed on Oct 6, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 28 minutes ago
Added to GitGenius on May 29th, 2026
Created on May 3rd, 2020
Open Issues & Pull Requests: 26 (+0)
GitHub issues: Enabled
Number of forks: 1,677
Total Stargazers: 14,970 (+3)
Total Subscribers: 218 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.3 hours
Mean response time: 11.1 days
90th percentile: 12.0 days
Tracked items: 165

Maintainer activity

3 people did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 18, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits. How this is counted.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 16
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 386 days
Stale 30+ days: 15
Stale 90+ days: 15

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (89)
  • 2.0 (10)
  • apple bug (7)
  • deprecated (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

The Composable Architecture is a Swift library developed by Point-Free that provides a structured approach to building applications across all Apple platforms including iOS, macOS, iPadOS, visionOS, tvOS, and watchOS. It works with both SwiftUI and UIKit, offering a consistent methodology for managing state, composing features, handling side effects, and writing tests.

The library addresses core challenges in application development through several key problem domains. State management is handled using simple value types that can be shared across multiple screens, allowing mutations in one screen to be immediately observed elsewhere. Composition enables developers to break down large features into smaller, isolated components that can be extracted into separate modules and reassembled. Side effects are managed in a testable and understandable manner, allowing parts of the application to interact with the outside world predictably. The architecture emphasizes testing at multiple levels, from unit tests of individual features to integration tests of composed features and end-to-end tests that verify how side effects influence the application. All of this is accomplished through a minimal API with few concepts and moving parts.

The core building blocks of the architecture are State, which describes the data a feature needs, Action, which represents all possible events that can occur, Reducer, which evolves state given an action and returns effects, and Store, which is the runtime that executes the reducer and effects while allowing observation of state changes. The library includes extensive examples demonstrating solutions to common and complex problems, including case studies, navigation patterns, higher-order reducers, reusable components, and complete applications like a Tic-Tac-Toe game, Todos app, Voice Memos, and the SyncUps app.

The repository shows strong community engagement and maintenance.

The library was designed through a series of episodes on Point-Free, a video series exploring advanced Swift programming topics. The repository includes comprehensive documentation and a multipart tour of the architecture, making it accessible to developers at various skill levels. The architecture enables developers to write testable code through the TestStore, which allows assertions about how features evolve as actions are sent, including verification of state changes and effect execution. Dependencies can be injected and mocked for testing purposes, allowing deterministic test scenarios even when features interact with external APIs or services.