iOS & macOS development
132.3K views | +0 today
Follow
iOS & macOS development
cool tips and source code for Cocoa, Swift and Objective-C
Curated by Alessio Nonni
Your new post is loading...
Your new post is loading...
Scoop.it!

TVButton - Recreating the cool parallax icons from Apple TV as iOS UIButtons in Swift

TVButton - Recreating the cool parallax icons from Apple TV as iOS UIButtons in Swift | iOS & macOS development | Scoop.it

Recreating the cool parallax icons from Apple TV as iOS UIButtons (in Swift). The effect is triggered by long pressing or dragging.

No comment yet.
Scoop.it!

YALField - Custom Field component with validation for creating easier form-like UI from interface builder

YALField - Custom Field component with validation for creating easier form-like UI from interface builder | iOS & macOS development | Scoop.it

Custom Field component with validation for creating easier form-like UI from interface builder.

No comment yet.
Scoop.it!

TKSubmitTransition - Animated UIButton of Loading Animation and Transition Animation

TKSubmitTransition - Animated UIButton of Loading Animation and Transition Animation | iOS & macOS development | Scoop.it

Inpired by https://dribbble.com/shots/1945593-Login-Home-Screen

No comment yet.
Scoop.it!

scan - The easiest way to run tests of your iOS and Mac app

scan - The easiest way to run tests of your iOS and Mac app | iOS & macOS development | Scoop.it

scan makes it super easy to run tests of your iOS and Mac app. It does all the heavy lifting for you to run your tests... the easy way.

No comment yet.
Scoop.it!

Fluent - Swift animation made easy

Fluent - Swift animation made easy | iOS & macOS development | Scoop.it

Fluent makes writing animations declarative and chainable.


boxView
.animate(0.5)
.rotate(0.5)
.scale(2)
.backgroundColor(.blueColor())
.waitThenAnimate(0.5)
.scale(1)
.backgroundColor(.redColor())

No comment yet.
Scoop.it!

Chronos-Swift - Grand Central Dispatch Utilities

Chronos-Swift - Grand Central Dispatch Utilities | iOS & macOS development | Scoop.it

Chronos is a collection of useful Grand Central Dispatch utilities. If you have any specific requests or ideas for new utilities, don't hesitate to create a new issue.


Utilities:

  • DispatchTimer - A repeating timer that fires according to a static interval, e.g. "Fire every 5 seconds".
  • VariableTimer - A repeating timer that allows you to vary the interval between firings, e.g. "Fire according to the function interval = 2 * count."
No comment yet.
Scoop.it!

OpinionzAlertView - Beautiful customizable alert view with blocks

OpinionzAlertView - Beautiful customizable alert view with blocks | iOS & macOS development | Scoop.it

Choose from predefined icons for info, warning, success and error alerts. Customize color or set your desired image.

No comment yet.
Scoop.it!

CariocaMenu - The fastest zero-tap iOS menu

CariocaMenu - The fastest zero-tap iOS menu | iOS & macOS development | Scoop.it

CariocaMenu is a simple, elegant, fast, modern, innovative, ..., navigation menu for your iOS app.


Features:

  • Accessible from a single swipe of the screen edge
  • Accessible with a tap on the indicator
  • Customisation for each side of the screen
  • Boomerang mode
  • Full AutoLayout
  • Easily customisable
  • Complete Documentation
No comment yet.
Scoop.it!

TTGEmojiRate - An emoji-liked rating view for iOS, implemented in Swift

TTGEmojiRate - An emoji-liked rating view for iOS, implemented in Swift | iOS & macOS development | Scoop.it

Features:

  • More interactive with Emoji and drag gesture.
  • Highly customizable.
  • Can be used in Interface Builder.
No comment yet.
Scoop.it!

Moya - Network abstraction layer written in Swift

Moya - Network abstraction layer written in Swift | iOS & macOS development | Scoop.it

You probably use Alamofire to abstract away access to NSURLSession and all those nasty details you don't really care about. But then, like lots of smart developers, you write ad hoc network abstraction layers. They are probably called "APIManager" or "NetworkModel".

No comment yet.
Scoop.it!

Async - Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch

Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch.

No comment yet.
Scoop.it!

Seam - CoreData and CloudKit made friends

Seam is a framework built to bridge gaps between CoreData and CloudKit. It almost handles all the CloudKit hassle. All you have to do is use it as a store type for your CoreData store. Local caching and sync is taken care of. It builds and exposes different features to facilitate and give control to the developer where it is demanded and required.

No comment yet.
Scoop.it!

BEMCheckBox - Tasteful Checkbox for iOS

BEMCheckBox - Tasteful Checkbox for iOS | iOS & macOS development | Scoop.it

BEMCheckBox is an open source library making it easy to create beautiful, highly customizable, animated checkboxes for iOS.

No comment yet.
Scoop.it!

MPParallaxView - Apple TV Parallax effect in Swift

MPParallaxView - Apple TV Parallax effect in Swift | iOS & macOS development | Scoop.it

Apple TV Parallax effect in Swift.

No comment yet.
Scoop.it!

VirtualGameController - Feature-rich game controller framework for iOS, tvOS, OS X and watchOS in Swift 2.1

VirtualGameController - Feature-rich game controller framework for iOS, tvOS, OS X and watchOS in Swift 2.1 | iOS & macOS development | Scoop.it

Features:

  • Mimics API for Apple's GameController framework (GCController)
  • Create software-based controllers (that use the MFi profiles)
  • Device motion support
  • Custom controller elements
  • Custom element mapping
  • WiFi-based, with Bluetooth fallback
  • Controller-forwarding
  • Works with Apple TV Simulator
  • Unlimited number of hardware controllers on Apple TV (using controller forwarding)
  • Ability to enhance inexpensive slide-on/form-fitting controllers with motion, extended profile elements and custom elements
  • iCade controller support (mapped through the MFi profiles so they appear as MFi hardware)
  • Easy-to-implement 3d touch on software controllers
  • Leverage on-screen and Bluetooth keyboards using software controllers (including with Apple TV)
  • Support for snapshots (compatible with Apple's snapshot format)
  • Swift 2.1
  • Framework-based
No comment yet.
Scoop.it!

KeychainSwift - Helper functions for saving text in Keychain securely for iOS, OS X, tvOS and watchOS

This is a collection of helper functions for saving text and data in the Keychain. As you probably noticed Apple's keychain API is a bit verbose. This library was designed to provide shorter syntax for accomplishing a simple task: reading/writing text values for specified keys.

No comment yet.
Scoop.it!

Prephirences - Swift protocols and convenience methods for preferences, configurations and app-state

Prephirences - Swift protocols and convenience methods for preferences, configurations and app-state | iOS & macOS development | Scoop.it

Swift library that provides useful protocols and convenience methods to manage application preferences, configurations and app-state.


Preferences could be user preferences NSUserDefaults, iCloud stored preferences NSUbiquitousKeyValueStore, key chain, file stored preferences (ex: plist) or your own private application preferences - ie. any object which implement the protocol PreferencesType, which define key value store methods.


You can 'merge' multiples preferences and work with them transparently.

No comment yet.
Scoop.it!

SwiftGen - A collection of Swift tools to generate Swift code

This is a suite of tools written in Swift 2 to auto-generate Swift 2 code for various assets of your project:

  • enums for your Assets Catalogs
  • enums for your Localizable.strings strings.
  • enums for your UIStoryboard and their Scenes
  • enums for your UIColors.
No comment yet.
Scoop.it!

Minimal Swift 2.1 protocol conformance

With the advent of protocol-oriented programming Swift types are able to adopt all sorts of super powers with minimal work.

But sometimes it's not clear what that minimal work is.


SequenceType, for example, simply requires that you implement func generate(); you get everything else for free.


This article provides copy-pastable snippets that represent the minimal implementation required to conform to a given protocol. Please feel free to suggest additional implementations by tweeting @featherless with a GitHub gist.

No comment yet.
Scoop.it!

YYModel - High performance model framework for iOS

YYModel - High performance model framework for iOS | iOS & macOS development | Scoop.it

Features:

  • High performance: The conversion performance is close to handwriting code.
  • Automatic type conversion: The object types can be automatically converted.
  • Type Safe: All data types will be verified to ensure type-safe during the conversion process.
  • Non-intrusive: There is no need to make the model class inherit from other base class.
  • Lightwight: This frame contains only 5 files.
No comment yet.
Scoop.it!

CommandBus - A light weight Command Bus implementation written in Swift

CommandBus - A light weight Command Bus implementation written in Swift | iOS & macOS development | Scoop.it

The idea of a command bus is that you create command objects that represent what you want your application to do. Then, you toss it into the bus and the bus makes sure that the command object gets to where it needs to go.


So, the command goes in -> the bus hands it off to a handler -> and then the handler actually does the job. The command essentially represents a method call to your application layer.

No comment yet.
Scoop.it!

PhoneNumberKit - A Swift framework for parsing, formatting and validating international phone numbers

PhoneNumberKit - A Swift framework for parsing, formatting and validating international phone numbers | iOS & macOS development | Scoop.it

Features:

  • Quickly validate, normalize and extract the elements of any phone number string.
  • Automatically grab the default region code from the phone's SIM (or if unavailable, the device's region).
  • Convert country codes to country names and vice versa.
  • All whilst using simple Swift 2.0 syntax
  • PhoneNumberKit uses the best-in-class metadata and general approach from Google's libphonenumber project. By not being a direct port, PhoneNumberKit can focus on a smaller feature-set that's cleaner and more readable.
No comment yet.
Scoop.it!

Setting Swift compiler flags in CocoaPods

Setting Swift compiler flags in CocoaPods | iOS & macOS development | Scoop.it

Lately I've been working on a Swift framework that I'm integrating into an existing app with CocoaPods. The framework relies on an #if DEBUG macro to run one of two code paths, depending on whether we're building with the Debug configuration or something else.


In order for our code to trigger an #if <something> macro, we need to set a -D<something> flag in the other Swift flags section of our target's build settings. There's nothing special about "debug" as it's used here, we're just creating a global variable and naming it DEBUG.

No comment yet.
Scoop.it!

Fakery - Swift fake data generator

Fakery - Swift fake data generator | iOS & macOS development | Scoop.it

Fakery is a Swift port of Ruby's Faker library that generates fake data.


It's useful in all the cases when you need to use some dummy data for testing, population of database during development, etc.

Generated data is pretty realistic, supports a range of locales, but returned values are not guaranteed to be unique.

No comment yet.
Scoop.it!

Mattress - iOS Offline Caching for Web Content

A Swift framework for storing entire web pages into a disk cache distinct from, but interoperable with, the standard NSURLCache layer. This is useful for both pre-caching web content for faster loading, as well as making web content available for offline browsing.

No comment yet.