Skip to content

Various functionality to make iOS app development with Swift even more enjoyable!

License

Notifications You must be signed in to change notification settings

startplatz/JetPack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

809 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JetPack

Build Status codecov.io

JetPack offers various functionality to make iOS app development with Swift even more enjoyable!

Functionality is developed along with the apps using it so everything in this library solves real problems. It's still in an early stage and thus it's not published in CocoaPods's repository yet.

Installation

JetPack requires Swift 5 and a deployment target of iOS 11.0 or newer.

pod 'JetPack', :git => 'https://github.com/fluidsonic/JetPack.git'

Since JetPack isn't versioned yet it is recommended to add it as a Git submodule and import it as a development pod. This way you can be sure that a subsequent pod update doesn't break your code until you check out latest changes manually.

Initialization

JetPack still has to rely on some Objective-C runtime modifications as well as some global notification observers, so it must be initialized.

Call JetPackKit.initialize() as early as possible, ideally early in one of the following locations:

  • main.swift
  • init() of your UIApplicationDelegate
  • application(_:willFinishLaunchingWithOptions:)
  • application(_:didFinishLaunchingWithOptions:)

Example

import JetPack
import UIKit


@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

	var window: UIWindow?


	override init() {
		super.init()

		JetPackKit.initialize()
	}


	func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]?) -> Bool {
		// your app initialization
	}
}

Modules

Module Description
JetPack Imports all modules listed below at once. Best value!
JetPack/Core Commonly used components, global functions & types.
JetPack/Deprecated Stuff you can but should no longer use.
JetPack/Experimental Functionality which is helpful but not fully developed.
JetPack/Extensions Imports all extension modules listed below at once.
JetPack/Extensions/CoreGraphics Useful extensions for the CoreGraphics framework.
JetPack/Extensions/CoreLocation Useful extensions for the CoreLocation framework.
JetPack/Extensions/Darwin Useful extensions for the Darwin module.
JetPack/Extensions/Foundation Useful extensions for the Foundation framework.
JetPack/Extensions/MapKit Useful extensions for the MapKit framework.
JetPack/Extensions/Photos Useful extensions for the Photos framework.
JetPack/Extensions/Swift Useful extensions for the Swift framework.
JetPack/Extensions/UIKit Useful extensions for the UIKit framework.
JetPack/Measures Working with and converting various measurement units made easy!
Angle, Length, Pressure, Speed, Temperature & Time so far.
JetPack/UI New UI components, replacements for existing UI components (e.g. an ImageView with URL loading or a Label with padding & link support) and subclasses augmenting existing UI components.

License

MIT

About

Various functionality to make iOS app development with Swift even more enjoyable!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 98.6%
  • Ruby 1.1%
  • Other 0.3%