This past week, I found myself in need of the ability to support the opening of URLs in multiple third-party browsers on iOS (e.g., chrome, firefox, etc.). No one-stop shop solution existed, so I took it upon myself to do it myself. I present you with Freedom 🦅, the freedom to choose other browsers! Currently, Freedom supports opening links in Safari, Brave, Google Chrome, and Firefox. I have plans to add support for other browsers over time.

At present, Freedom targets both iOS 9 and iOS 10. As Swift 4 and iOS 11 are on the horizon, I’ve added Swift 4 support, which can be accessed via the swift4 branch.

Freedom is available via CocoaPods, Carthage, Swift Package Manager, and directly on Github at https://github.com/ArtSabintsev/Freedom.

At present, Swift’s Foundation library is lacking a lot of useful String manipulation functions. Many of those functions are needed in server-side development. Earlier this week, I began fleshing out a library that addresses this problem — Guitar.

Presently, Guitar has just around 30 functions, is fully documented, and is fully unit tested. It’s been tested with iOS, macOS, tvOS, watchOS, and server-side apps. I would love for this library to become a powerful tool in every Swift Developer’s arsenal. To do so, I need help from the community to make this library robust.

If you’re interested, please star it, fork it, or open an issue/PR at http://github.com/ArtSabintsev/Guitar or at http://sabintsev.com/Guitar.

Zephyr is a Swift library that does two-way synchronization between NSUserDefaults and NSUbiquitousKeyValueStore. Zephyr allows you to synchronize either specific keys or all of your NSUserDefaults with one line of code.

Zephyr.sync() // Synchronize all defaults
Zephyr.sync("FirstKey", "SecondKey"...) // Synchronize specific keys

Zephyr also has a built in a monitoring system that allows you to register certain keys to be synchronized immediatley when their value changes.

For example, if you register one or more keys for monitoring, Zephyr will automatically synchronize those keys to/from iCloud the moment your app is notified of their change.

More information can be found on the github page.

About a month ago, I joined the @GetNarwhal team. The iOS app we’re building is a client for Reddit. Today, we released v1.5.4, the first version where my contributions are live.

The entire list of features can be found in the release notes on the App Store, but here’s a quick highlight of some of the features I added:

  • Tap the Narwhal icon for fast theme switching
  • Regex parsing and hot-linking of subreddit (/r/) and user links (/u/)
  • Improved sharing to multiple aspects of the app
  • Improved private messaging UX
  • Support for opening links in Google Chrome

There’s a lot more in our pipeline. If you have any feature requests, feel free to ping me, Rick, Ken, or the @GetNarwhal account on Twitter! Also, feel free to leave a post on our subreddit. Lots more to come!

Download the app here!

I’m happy to announce that on July 27th, 2015, I will be joining The Washington Post as one of their Lead iOS Developers. I’m really excited for this opportunity as it’s full of many career firsts.

  • First time that I am working in the capacity of a developer outside of a venture backed startup
  • First time that I’ll be working on a large iOS team
  • First time that I’ll be working on a mobile product that has an enormous established user base

Outside of personal growth, I am honored to be given the opportunity to work with an amazing team that has built such a high-visibility product that assists its users in shaping their views and perceptions of the world.

Good times lie ahead!

Arthur Ariel Sabintsev

Senior Engineering Manager at Capital One. I write about Open Source Software Development in the Swift and iOS communities.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store