Expert guidance, battle-tested open source tools, advanced AI skills, exclusive videos, and a community of likeminded engineers.
Expert-crafted AI skill documents for building long-lasting Swift applications.
Design, test, and evolve applications using the same principles, libraries, and techniques we use every day at Point‑Free.

We celebrate 8 years of Point-Free with a live stream! We take our brand new “Point-Free Way” skill documents for a spin by building a Flashcards app powered by SQLiteData, and we give a sneak peek at “Composable Architecture 2.0,” a reimagining of our popular library.

We clean up our test suite and make use of the expectDifference helper, for precisely describing changes to state in an exhaustive fashion. We will then rapidly add test coverage using the forthcoming “Point-Free Way” skills documents. Finally, we will achieve the seemingly impossible by writing a test against iCloud sharing!

SQLiteData is incredibly test-friendly. We will show how to configure a test suite for your data layer, how to seed the database for testing, how to assert against this data as it changes, how to employ expectNoDifference for better debugging over Swift Testing’s #expect macro, and how to control the uuid() function used by SQLite.

We dissect some of the most important and interesting topics in Swift programming frequently, and deliver them straight to your inbox.

We cover both abstract ideas and practical concepts you can start using in your code base immediately.

Download a fully-functioning Swift playground from the video so you can experiment with the concepts discussed.

We transcribe each video by hand so you can search and reference easily. Click on a timestamp to jump directly to that point in the video.
SQLite is one of the most well-crafted, battle-tested, widely-deployed pieces of software in history, and it’s a great fit for apps with more complex persistence needs than user defaults or a JSON file. This collection serves as an introduction to the basics of SQLite, as well as an exploration into more advanced topics and techniques for integrating SQLite into your applications.
The Swift language has grown over the years and become more and more powerful. It now boosts a comprehensive static type system (generics, existentials…), a suite of concurrency tools (actors, dynamic isolation…), and most recently even ownership capabilities (consuming, borrowing, non-copyable types…). In “Back to basics” we will focus on just one part of the language in order to uncover the deep theory behind that feature as well as provide concrete advice for writing real-world code.
Swift 5.9 brings a powerful new feature to the language: macros. They allow you to implement new functionality into the language as if it was built directly in the language itself. However, they can be tricky to get right, and as such one needs to write an extensive test suite to make sure you have covered all of the subtle and nuanced edge cases that are possible.
If you have ever created a binding using the get:set: initializer, you may want to reconsider. Doing so can hurt SwiftUI’s ability to animate your view. Luckily there is a better way. You can leverage @dynamicMemberLookup and subscripts to derive new bindings in a way that allows SwiftUI to propertly track where the binding came from.
SwiftData is not capable of filtering and sorting by raw representable enum properties in models. Predicates and sort descriptors will compile just fine when referencing enum properties, but it will crash at runtime.
SwiftData is not capable of sorting by boolean properties in models. And if you try to trick SwiftData to allow it, you will encounter runtime crashes.

@pointfreeco ❤️: Thank you! 🧠: … The brain can’t say anything. It is blown away (🤯)!

Their content pushes the boundary of my knowledge, and it's fun to watch!

Three recent @pointfreeco episodes were so interesting I stayed in the treadmill 3x as long as usual and watched them all in a row! Walking may be challenging later/tomorrow... 😮

Due to the amount of discussions that reference @pointfreeco, we added their logo as an emoji in our slack.

Really love this episode - thanks @mbrandonw + @stephencelis! Understanding Swift types in terms of algebraic data types is such an elegant way of seeing the # of possible values your Swift types will represent 🤯 #Simplifyallthethings #GoodbyeComplexity

Thanks @mbrandonw @stephencelis for the very pedagogical series with @pointfreeco Excited and looking forward to learn from the series

I really love the dynamics of @pointfreeco. The dance of “this is super nice because…” “yes, BUT….”. they clearly show what’s good, what’s not so good and keep continuously improving.

My new favourite morning routine is feeding 👶🏻 while watching @pointfreeco

I bought the annual subscription and after I watched all videos and played with the sample code and libraries I can say it was the best money I spent in the last 12 months.
Our free plan includes 1 members only episode of your choice, access to 75 free episodes with transcripts and code samples, and weekly updates from our newsletter.