For my talk at NSSpain 2020 I’ve prepared a beyond-the-basics Timelane talk.

I think everyone who’s heard about Timelane by now knows what it does for its simplest use case - debugging some Combine based code. However, you can do much, much more with Timelane!

So for my NSSpain 2020 talk I prepared 5 little examples on how to use Timelane beyond the simplest use case.

I’ve pushed all the demo apps I use in my talk to this repository: https://github.com/icanzilb/nsspain2020.

Using TimelaneCombine to debug Combine code

This is the most straight-forward use case to debug a Combine-based app.

https://github.com/icanzilb/nsspain2020/tree/main/TimerApp-Combine

Debugging RxSwift code with RxTimelane

A timer app written in RxSwift (identical to the Combine version used in the talk into) that talks to Instruments via RxTimelane.

https://github.com/icanzilb/nsspain2020/tree/main/TimerApp-RxSwift

Logging any data to Instruments via TimelaneCore

The demo uses a task queue and tracks the task queue load in Instruments via TimelaneCore:

https://github.com/icanzilb/nsspain2020/tree/main/BusyQueue

Additionally, the completed demo includes the smile-to-profile code from the last demo in the talk.

Using Timelane with the Composable Architecture by pointfree.co

This is an (almost) unchanged demo app from https://github.com/pointfreeco/swift-composable-architecture which is a ToDo app. Timelane logs in Instruments any user events and also plots ToDo items’ lifetime.

https://github.com/icanzilb/nsspain2020/tree/main/Todos

Where to go from here?

If you want to learn more about Timelane, to download it for free, or watch some example videos head to: http://timelane.tools.

Thank you and if you have any questions, feedback, or press inquiries do get in contact at https://twitter.com/icanzilb.

To learn about all Combine check Combine: Asynchronous programming with Swift - this is where you can see all updates, discuss in the website forums, and more.