Swift is a general-purpose, multi-paradigm, compiled, intuitive, and powerful programming language developed by Apple mainly for its products in 2014.

Imagine if you could make Swift development faster, and see an instant boost in your workflow.

or even better:

What if there were the 15 best Swift Libraries to choose from.

…and each of them could make your project development faster and easier?

You’d probably be pumped to read about them.

Lucky for you, that’s exactly what I’m going to share with you in this post:

15 awesome Swift Libraries

Let’s get started with the list:

1. IOS Project Template

Swift Libraries

A template for iOS projects with a framework-oriented architecture approach, preconfigured Fastlane lanes, Travis CI jobs and Github integrations of Codecov, HoundCI for SwiftLint and Danger. It provides a starting point for new projects which can be immediately distributed via HockeyApp and Testflight.

Features

  • It can easily be configured.
  • It will contain all the necessary files to build and distribute the app.
  • The different parts work independently.

Link

2. Swift Viper Module

This is an Xcode template for VIPER Architecture written in Swift 4

Features

  • Easy to iterate on
  • Collaboration friendly
  • Separated out concerns
  • Spec-ability

Link

3. Swift5 Module Template

An opinionated starting point for awesome, reusable Swift 5 modules.

Features

  • Ability to be used from Swift Package Manager, CocoaPods and Carthage
  • Clean folder structure
  • Testing as a standard
  • Turnkey access to Travis CI
  • Semantic versioning and a CHANGELOG
  • Included example/demo app

Link

4. Mint

A package manager that installs and runs Swift command line tool packages.

Features

  • easily run a specific version of a package
  •  link a package globally
  •  builds are cached by version
  •  distribute your own packages without recipes and formulas
  •  specify a list of versioned packages in a Mintfile for easy use

Link

5. Reactant

Reactant is a foundation for rapid and safe iOS development.

Features

  • Reduce development costs
  • Improve reusability
  • Improve testability

Link

6. Viperit

Viper Framework for iOS using Swift

Features

  • Create modules easily using Xcode templates
  • Use storyboard, xib, programmatic views or SwiftUI
  • Built-in router functions
  • Easy to test

7. Model2App

Model2App is a simple library that lets you quickly generate a CRUD iOS app based on just a data model defined in Swift. (CRUD – Create Read Update Delete). Ever wanted to quickly validate a data model for your next awesome iOS app? Model2App lets you save hours/days by generating a fully working app with persistence layer, validation and many more features.

Features

  • Supports both iPhones and iPads
  • Supports both portrait and landscape orientations
  • Validates your data model for declared relationships and declared control types for properties
  • Enables using emoji character for menu icon image

Link

8. SwiftKit

SwiftKit enables you to easily generate a cross-platform Swift Framework from your command line. It is the best way to start your next Open-Source Swift Framework

Features

  • Generated Kit supports iOStvOSwatchOS and macOS
  •  CocoaPodsCarthage and Swift Package Manager compatibility
  •  README.md template
  •  Fastlane already integrated for tests and release
  •  Jazzy to generate documentation
  •  SwiftLint Build-Phase integrated

Link

9. Xcbeautify

A little beautifier tool for xcodebuild

Features

  • 2x faster than xcpretty.
  •  Human-friendly and colored output.
  •  Supports the new build system’s output.
  •  Supports Xcode 10’s parallel testing output.
  •  Supports formatting Swift Package Manager output.

Link

10. XcodeGen

XcodeGen is a command line tool written in Swift that generates your Xcode project using your folder structure and a project spec.

Features

  • Generate projects on demand and remove your .xcodeproj from git, which means no more merge conflicts!
  • Groups and files in Xcode are always synced to your directories on disk
  • Easy configuration of projects which is human readable and git friendly
  • Easily copy and paste files and directories without having to edit anything in Xcode

Link

11. EASE

Ease is an event-driven animation system that combines the observer pattern with custom spring animations as observers.

Features

  •  Animate any value type
  •  Set multiple animations for a single value
  •  Animation trajectories update when you update the targetValue
  •  Add natural spring behavior to any value change

Link

12. FlightAnimator

FlightAnimator provides very simple blocks based animation definition language that allows you to dynamically create, configure, group, sequence, cache, and reuse property animations.

Features

  • 46+ Parametric Curves, Decay, and Springs
  •  Blocks Syntax for Building Complex Animations
  •  Chain and Sequence Animations:
  •  Apply Unique Easing per Property Animation
  •  Advanced Multi-Curve Group Synchronization
  •  Define, Cache, and Reuse Animations

Link

13. Stellar

A fantastic Physical animation library for swift, it is base on UIDynamic and extension to it, friendly APIs make you use it or custom your own animation very easily!

Features

  • View’s Animation
  • Layer’s Animation
  • Chainable (every step can be observed)
  • File configurable

Link

14. AudioPlayer

AudioPlayer is syntax and feature sugar over AVPlayer. It plays your audio files (local & remote)

Features

  • Quality control based on number of interruption (buffering) and time delay
  • Connection handling
  • Audio item enqueuing
  • Player mode (Repeat, Repeat all, Shuffle)
  • MPNowPlayingInfoCenter
  • A high level of customization

Link

15. SwiftySound

SwiftySound is a simple library that lets you play sounds with a single line of code.

Features

  •  Playing single sounds
  •  Loops
  •  Infinite loops
  •  Playing the same sound multiple times simultaneously
  •  Stopping all sounds with a global static method
  •  Ability to pause and resume
  •  Adjusting sound volume
  •  Callbacks
  •  Global static variable to enable/disable all sounds

Link

Conclusion

If you get to use any of these libraries for your projects, please do let us know what you think about them. We appreciate your comments.