All Projects → NikolaKirev → Onboardkit

NikolaKirev / Onboardkit

Licence: mit
Customisable user onboarding for your iOS app

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Onboardkit

Ahoy Onboarding
Android onboarding library.
Stars: ✭ 951 (+184.73%)
Mutual labels:  walkthrough, onboarding
BJOTPViewController
Entering OTP made simpler.
Stars: ✭ 42 (-87.43%)
Mutual labels:  uikit, viewcontroller
Dtoverlaycontroller
A customizable and easy-to-use overlay view controller container.
Stars: ✭ 82 (-75.45%)
Mutual labels:  uikit, viewcontroller
GuideChimp
Create interactive guided product tours in minutes with the most non-technical friendly, lightweight and extendable library.
Stars: ✭ 138 (-58.68%)
Mutual labels:  onboarding, walkthrough
CoachMarks
UI component to focus the user's attention on parts of the app
Stars: ✭ 37 (-88.92%)
Mutual labels:  uikit, onboarding
WVWalkthroughView
WVWalkthroughView is an objective C based utility to highlight certain parts for iOS apps.
Stars: ✭ 29 (-91.32%)
Mutual labels:  onboarding, walkthrough
Deskapp
DeskApp Admin is a free to use Bootstrap 4 admin template.
Stars: ✭ 296 (-11.38%)
Mutual labels:  uikit
Reactionbutton
Since Facebook introduced reactions in 2016, it became a standard in several applications as a way for users to interact with content. ReactionButton is a control that allows developers to add this functionality to their apps in an easy way.
Stars: ✭ 305 (-8.68%)
Mutual labels:  uikit
Wtrequestcenter
WTKit is my Code accumulation
Stars: ✭ 293 (-12.28%)
Mutual labels:  uikit
Framework Codeidea
System file classification
Stars: ✭ 289 (-13.47%)
Mutual labels:  uikit
Awesome Engineering Team Management
👔 How to transition from software development to engineering management
Stars: ✭ 319 (-4.49%)
Mutual labels:  onboarding
Uix Kit
A free UI toolkit based on some common libraries for building beautiful responsive website, compatible with Bootstrap v4.
Stars: ✭ 318 (-4.79%)
Mutual labels:  uikit
Kdintroview
Stars: ✭ 300 (-10.18%)
Mutual labels:  onboarding
Swiftui Cheat Sheet
SwiftUI 2.0 Cheat Sheet
Stars: ✭ 3,417 (+923.05%)
Mutual labels:  uikit
Jsqwebviewcontroller
[Deprecated] A lightweight Swift WebKit view controller for iOS
Stars: ✭ 307 (-8.08%)
Mutual labels:  viewcontroller
Uikitplus
🏰 Declarative UIKit with LivePreview for iOS9+ (best alternative to SwiftUI)
Stars: ✭ 294 (-11.98%)
Mutual labels:  uikit
Alchemy
An experimental GUI framework for Rust, backed by per-platform native widgets. React, AppKit/UIKit inspired. EXPERIMENTAL, runs on Cocoa right now. ;P
Stars: ✭ 321 (-3.89%)
Mutual labels:  uikit
Contraflutterkit
A Flutter UI kit with 50 plus screens for beginners to learn.
Stars: ✭ 288 (-13.77%)
Mutual labels:  uikit
Laravel Welcome Notification
Send a welcome notification to new users
Stars: ✭ 299 (-10.48%)
Mutual labels:  onboarding
Compositional Layouts Kit
📏 A set of advanced compositional layouts for UICollectionView with examples [Swift 5.3, iOS 13].
Stars: ✭ 317 (-5.09%)
Mutual labels:  uikit

OnboardKit

Swift 5.0 Version License Carthage compatible Twitter

OnboardKit

Customizable user onboarding for your UIKit app in Swift

Requirements

  • Swift 5.0
  • Xcode 10
  • iOS 11.0+

Installation

Carthage

github "NikolaKirev/OnboardKit"

CocoaPods

use_frameworks!

# Latest release in CocoaPods
pod 'OnboardKit'

# Get the latest on master
pod 'OnboardKit', :git => 'https://github.com/NikolaKirev/OnboardKit.git', :branch => 'master'

Don't forget to import OnboardKit in the file you intend to use it.

Usage

  1. Create and populate a bunch of OnboardPage instances
let page = OnboardPage(title: "Welcome to OnboardKit",
                       imageName: "Onboarding1",
                       description: "OnboardKit helps you add onboarding to your iOS app")
  1. Create an OnboardViewController
let onboardingViewController = OnboardViewController(pageItems: [pageOne, ...])
  1. Present the view controller
onboardingViewController.presentFrom(self, animated: true)

(use this convenience method to make sure you present it modally)

Customization

Custom examples

Customizing Fonts and Colors

You can customize the look of your onboarding by changing the default colors and fonts.

  1. Initialize an AppearanceConfiguration instance with the desired custom style properties
let appearance = AppearanceConfiguration(tintColor: .orange,
                                         titleColor: .red,
                                         textColor: .white,
                                         backgroundColor: .black,
                                         imageContentMode: .scaleAspectFit,
                                         titleFont: UIFont.boldSystemFont(ofSize: 32.0),
                                         textFont: UIFont.boldSystemFont(ofSize: 17.0))
  1. Pass the AppearanceConfiguration instance as a parameter when initialising an OnboardViewController
let onboardingVC = OnboardViewController(pageItems: onboardingPages,
                                         appearanceConfiguration: appearance)
List of customizable properties:
  • tintColor - used for tinting the advance and action buttons
  • titleColor - used to set title color (textColor is used if not specified)
  • textColor - used to set description text color
  • backgroundColor - used to set view background color
  • imageContentMode - used to set the content mode of page imageViews
  • titleFont - used to set the title font (used for the action button font as well)
  • textFont - used to set the description text font (used for the advance button font as well)
  • advanceButtonStyling - a block used to customize the advance button
  • actionButtonStyling - a block used to customize the action button

Customizing Buttons

To customize the style of the advance and action buttons on each page of the onboarding flow, you can use a ButtonStyling closure.

  1. Create the closure
let advanceButtonStyling: OnboardViewController.ButtonStyling = { button in
    button.setTitleColor(UIColor.lightGray, for: .normal)
    button.titleLabel?.font = UIFont.systemFont(ofSize: 16.0, weight: .semibold)
}
  1. Pass the closure in the AppearanceConfiguration initializer
let appearance = OnboardViewController.AppearanceConfiguration(tintColor: .orange,
                                                               advanceButtonStyling: advanceButtonStyling)

Author

Nikola Kirev

License

OnboardKit is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].