Code Monkey home page Code Monkey logo

jetpack's Introduction

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

jetpack's People

Contributors

fluidsonic avatar everald avatar denniskiewning avatar adamnemecek avatar

Stargazers

wonkwh avatar  avatar Jesse Montrose avatar Tranld avatar Arian Amini avatar  avatar Henry Hardy avatar  avatar Zack Rhodes avatar  avatar Jake Schwartz avatar Oleksandr Gnatyshyn avatar Jochen Holzer avatar Alexis Gallagher avatar  avatar Bob Edmonston avatar HongHao Zhang avatar Antonio Agudo avatar Emil Eriksson avatar Hooman Mehr avatar

Watchers

 avatar James Cloos avatar  avatar

jetpack's Issues

NavigationBar and NavigationController must not be used from the UIKit extensions module

Extensions/UIKit/UIViewController.swift:280:47: error: use of undeclared type 'NavigationBar'
        public var preferredNavigationBarVisibility: NavigationBar.Visibility {
                                                     ^~~~~~~~~~~~~

Extensions/UIKit/UIViewController.swift:280:47: error: use of undeclared type 'NavigationBar'
        public var preferredNavigationBarVisibility: NavigationBar.Visibility {
                                                     ^~~~~~~~~~~~~

Extensions/UIKit/UIViewController.swift:673:61: error: use of undeclared type 'NavigationController'
                guard let navigationController = navigationController as? NavigationController else {
                                                                          ^~~~~~~~~~~~~~~~~~~~

Project integration via Pods not working

Hi!

I would love to use the framework in my project. However I wasn't able to make it work. I did the installation via pod file, now the call to JetPackKit.initialize() results in the error Use of unresolved identifier 'JetPackKit'. How can I fix this issue?

Are you still actively developing the framework? So far I've copied the code to my project and fixed some bugs that I would love to share with you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.