The Composable Architecture tutorial

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • Appwrite - The Open Source Firebase alternative introduces iOS support
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • SonarQube - Static code analysis for 29 languages.
  • swift-composable-architecture

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

    // swift-tools-version:5.3 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "DogBreedsComponent", platforms: [.iOS(.v14)], products: [ .library( name: "DogBreedsComponent", targets: ["DogBreedsComponent"] ), ], dependencies: [ // 1. .package( name: "swift-composable-architecture", url: "https://github.com/pointfreeco/swift-composable-architecture.git", .exact("0.17.0") ), // 2. .package( name: "Kingfisher", url: "https://github.com/onevcat/Kingfisher", .exact("6.2.1") ) ], targets: [ .target( name: "DogBreedsComponent", dependencies: [ .product(name: "ComposableArchitecture", package: "swift-composable-architecture"), .product(name: "Kingfisher", package: "Kingfisher") ] ), .testTarget( name: "DogBreedsComponentTests", dependencies: [ "DogBreedsComponent", .product(name: "ComposableArchitecture", package: "swift-composable-architecture") ] ), ] )

  • TCA-tutorial

    You can find the source code of this tutorial here. If you're so eager to try it that you want to skip the tutorial, just launch RootView.swift preview.

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support. Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • Kingfisher

    A lightweight, pure-Swift library for downloading and caching images from the web.

    // swift-tools-version:5.3 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "DogBreedsComponent", platforms: [.iOS(.v14)], products: [ .library( name: "DogBreedsComponent", targets: ["DogBreedsComponent"] ), ], dependencies: [ // 1. .package( name: "swift-composable-architecture", url: "https://github.com/pointfreeco/swift-composable-architecture.git", .exact("0.17.0") ), // 2. .package( name: "Kingfisher", url: "https://github.com/onevcat/Kingfisher", .exact("6.2.1") ) ], targets: [ .target( name: "DogBreedsComponent", dependencies: [ .product(name: "ComposableArchitecture", package: "swift-composable-architecture"), .product(name: "Kingfisher", package: "Kingfisher") ] ), .testTarget( name: "DogBreedsComponentTests", dependencies: [ "DogBreedsComponent", .product(name: "ComposableArchitecture", package: "swift-composable-architecture") ] ), ] )

  • swift-case-paths

    🧰 Case paths bring the power and ergonomics of key paths to enums!

    Via the usage of pointfree CasePath (if you'd like to know more, check out this repository. In short, it's a way to use enums in the same fashion as KeyPaths). We can say that DogsReducer is only going to work with the AppAction.dogs part of AppAction.

  • redux

    Predictable state container for JavaScript apps

    redux.js.org Thorough documentation about Redux framework for js. Don't need to go into the details, but this website contains a good explanation of the concept.

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts