Year 1 Issue 3

What’s interesting about this week’s projects the visible impact of the announcements from WWDC. We have tools written in Swift 2.0, as well as port of new components like UIStackView to iOS versions lower than 9.

Let’s dig in!

Trending Swift projects

WeatherMap

It is always nice to see real world app, available on the App Store open sourced, and look at the architectural decisions that their authors have made.

A fully customizable and flexible paging menu controller built from other view controllers placed inside a scroll view allowing the user to switch between any kind of view controller with an easy tap or swipe gesture. This project is remarkable for the degree of customization that is seems to have, something that is rare to find in UI libraries.

PageMenu Screnshot

LTMorphingLabel

Add nice animation effects to your UILabels.

LTMorphingLabel Screenshot

And speaking of text, checkout SyntaxKit, a tool to perfor syntax highlighting using the TextMate tmLanguage and tmTheme formats.

Dodo

Dodo is a UI widget for showing text messages in iOS apps. It is useful for showing short messages to the user, something like: “Message sent”, “Note saved”, “No Internet connection”. It comes with some default styles to communicate success and failure, and it can be customized too.

Carthage

The dependency manager written in Swift that doesn’t touch your project has been updated to version 0.7.5, adding support for watchOS.

New Swift projects

DVR

Venmo has been releasing a lot of cool open source projects recently, and DVR is their latest one. With DVR you can record and repaly NSURLSession requests, and use them for example in an acceptance test suite. It is inspired by vcr.

Playdown

A script to convert Playground files into Markdown ones.

Arithmosophi

A set of protocols for Arithmetic and Logical operations. For example:

class Box<T> {
  var value: T
}

func +=<T where T:Addable> (inout box: Box<T>, addend: T) {
  box.value = box.value + addend
}

var myInt: Box<Int>(5)
myInt += 37

Trending Objective-C projects

OAStackView

A port of the new iOS 9 UIStackView to iOS 6+.

DeepLinkKit

A route-matching, block-based way to handle your deep links. You can read more on their documentation website.

infer

Facebook Infer is static analysis tool - if you give Infer some Objective-C, Java, or C code, it produces a list of potential bugs.

iOS 9 Adoption Tips

A list of tips on how to migrate your apps to iOS 9. Warning: half of it is in Chinese.

DWURecyclingAlert

This library made it to the list last week as well, and very well deserving it. A very useful tool indeed.

A drop-in code snippet that detects non-recycled UI elements inside your UITableViewCells, and marks them in red. Very useful while developing, and it’s disabled in Release builds by default.

New Objective-C projects

Dixie

Probably one of the most interesting projects in this week’s issue, Dixie is an open source Objective-C testing framework for altering object behaviours. It’s primary goal is to provide a set of tools, which the developers can test their code with. Behind the goal is the ideology of “do not always expect the best”. You can read more about Dixie here.

OALayoutAnchor

From the same author of OAStackView, here’s a port of iOS 9’s new NSLayoutAnchor.

NSString-Hash

An NSString category for MD5, SHA1, SHA256, SHA512 Hash, and hashes of files, which promises to use only a small amount of memory.

Follower

A library to “track trip distance, speed, altitude, and duration like a boss.”.

/ Create your follower, and tell it to start route tracking.
self.follower = [Follower new];
[self.follower beginRouteTracking];

// Maybe they want to pause their workout so they can stop for a drink...
[self.follower pauseRouteTracking]

// Ready to get back to it!
[self.follower resumeRouteTracking]

// Some time later when they're done...
[self.follower endRouteTracking];

// Then query the follower instance like this
[self.follower averageSpeedWithUnit:SpeedUnitKilometersPerHour];
[self.follower totalDistanceWithUnit:DistanceUnitKilometers];
...

Thanks for reading The iOS Times, if you have comments, complaints, suggestions, or any other feedback please tweet us @mokacoding.