Super happy to announce that Tacks is getting close to public release - this weekend I've kicked off the beta program for those that signed up. If you like, you can try it out before it hits the app store: https://betas.to/fJ3Dq3pz.

So what is Tacks?

Tacks is your private list of places you've discovered and which you want to come back to: great cafes, pubs, parks, sunbathing spots.. ☀️ you get the idea. You can very quickly drop a pin where you stand, and later retrace your steps back to that spot.

It's for bookmarking places around you, basically.

The aim is to make a really use simple but useful tool. In the process, I'll have an app of my own, set aside from my contracting work, with which I can try out cutting edge Swift development techniques.

For example, this project is absolutely full of Functional Reactive programming (I used ReactiveKit), which I want to now blog with some example code ASAP, because it's really cool. I also used the MVVM+Coordinator pattern with great success, I want to blog about that too. There's a bunch more to write about too: the fastlane continuous delivery pipeline for testing, building and shipping builds automatically; extensions made to ReactiveKit

There's some bespoke frameworks which I've developed for the app, which I want to now document and develop as open-source projects in their own right:

- ReactiveKitSwappableDatasource (this needs a better name) - a wrapper around a generic collection which allows the underlying dataset to be swapped out on-the-fly, with changeset notifications. e.g. swap a Realm `result` for a plain array of the same type, and it'll compare the differences. Really useful for binding the map to the tableView.

- SwipeAndSnapCell - I need to turn this into a cocoa-pod. This is the library I made for swiping tableView cells, with an iOS10 mail-style "snap".