Tour of the Composable Architecture: Navigation

Episode #245 • Aug 14, 2023 • Subscriber-Only

With the standups list and standup form features ready, it’s time to integrate them together using the Composable Architecture’s navigation tools. We will make it so you can add and edit standups via a sheet, and write comprehensive unit tests for this integration.

Navigation
Introduction
00:05
Adding a standup
00:51
Scrumdinger retrospective
18:44
Testing the standups list
25:56
Viewing and editing a standup
37:53
Next time: Navigating to the detail
48:35

Unlock This Episode

Our Free plan includes 1 subscriber-only episode of your choice, plus weekly updates from our newsletter.

Introduction

Stephen: And this tool really is thanks to the fact that we are using value types for our domain. If we were using reference types this just would not be possible because we couldn’t capture a copy of state before running the action, and then compare to state after running the action.

OK, so this is all looking great. There are probably a few more tests that could be written, but let’s start moving onto more exciting things.

Brandon: Right now we have two features built in the Composable Architecture, the standups list and the standup form, and they are supposed to be intimately related. We are supposed to be able to present the form view from the list view in a sheet when the “Add” button is tapped, and then further facilitate communication between these features to add a standup to the root list.

Let’s start doing that work, and get our first peek into what navigation looks like in the Composable Architecture.

This episode is for subscribers only.

Subscribe to Point-Free

Access this episode, plus all past and future episodes when you become a subscriber.

See plans and pricing

Already a subscriber? Log in

References

Composable Architecture

Brandon Williams & Stephen Celis • Monday May 4, 2020

The Composable Architecture is a library for building applications in a consistent and understandable way, with composition, testing and ergonomics in mind.

Getting started with Scrumdinger

Apple

Learn the essentials of iOS app development by building a fully functional app using SwiftUI.

CasePaths

Brandon Williams & Stephen Celis

CasePaths is one of our open source projects for bringing the power and ergonomics of key paths to enums.

Downloads