Year 1 Issue 13

Another week, another JSON parsing library 😝, plus of course other very interesting libraries. Enjoy.

Shark

Language: Swift

A script that generates enums from the .xcassets folder, never look up and copy paste an image name again:

myImageView.image = Shark.EmptyIcons.programs_empty_icon.image

WAAppRouting

Language: Objective-C

A routing frameworks specifically designed to handle stacks of view controllers, configurable with custom routing matchers and handlers, and compatible with iOS 9 universal links.

ModelRocket

A framework to create JSON-based models:

class Vehicle: ModelRocket {
    let make  = Property<String>(key: "make")
    let model = Property<String>(key: "model", required: true)
    let year  = Property<Int>(key: "year") { year in
        if year < 2015 {
            // offer discount
        }
    }
    let color = Property<UIColor>(key: "color", defaultValue: UIColor.blackColor())
}

let vehicle = Vehicle(json: <json>)

class Vehicles: ModelRocket {
    let vehicles = PropertyArray<Vehicle>(key: "vehicles")
}

let allVehicles = Vehicles(json: <json>)

BonMot

Language: Objective-C

Nice and chainable Objective-C DSL to create and manages NSAttributedString:

NSSSTring *string = @"Lorem ipsum...";

NSAttributedString *attributedString = BONChain.new
  .fontNameAndSize(@"AmericanTypewriter", 17.0f)
  .lineHeightMultiple(1.8f)
  .string(quote)
  .attributedString;

Linchi

Language: Swift

Small web server written in pure Swift, designed for Linux, but since the Swift compiler is not open source yet (finger crossed) it is distributed as an OS X app.

signals-ios

Language: Objective-C

An eventing framework that enables you to implement the Observable pattern without using error prone and clumsy NSNotifications or delegates, and also adds type safety.

The setup is not a simple one liner, so I’d suggest you have a look at the README.

TKSubmintTransition

Language: Swift

A UIButton to use for async submit actions, i.e. logging in, that animates into a spinner view, than perfor a custom animated transition to the next screen.

The effect is pretty nice, but the animated gif is quite heavy, so I haven’t added it here, but you can see by clicking this.

FDCalendar

Language: Objective-C

A calendar view for iOS apps supporting world and Chinese calendars.

FDCalendar Demo

BALoadingView

Language: Objective-C

An original pair of loading animations, with abundance of configuration options.

BALoadingView Demo

Swift

Language: Are you even asking? 😂

A collection of Swift snippets for everyday iOS and OS X development. Did you know all of them already?

Open Source Apps

If this is not the first time you read this newsletter then you’ll know that I like to share links to open source apps. What better way to grow as a developer than reading the work of others? It is always nice to compare other apps implementation of common things such as table view data sources, root view controllers, custom animations, custom UI.

Other Interesting Projects