N8iveKit alternatives and similar libraries
Based on the "UI" category.
Alternatively, view N8iveKit alternatives based on common mentions on social networks and blogs.
-
Lottie
An iOS library to natively render After Effects vector animations -
DZNEmptyDataSet
A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display -
AsyncDisplayKit
Smooth asynchronous user interfaces for iOS apps. -
SVProgressHUD
A clean and lightweight progress HUD for your iOS and tvOS app. -
IGListKit
A data-driven UICollectionView framework for building fast and flexible lists. -
iCarousel
A simple, highly customisable, data-driven 3D carousel for iOS and Mac OS -
IQKeyboardManager
Codeless drop-in universal library allows to prevent issues of keyboard sliding up and cover UITextField/UITextView. Neither need to write any code nor any setup required and much more. -
SkeletonView
☠️ An elegant way to show users that something is happening and also prepare them to which contents they are awaiting -
FSCalendar
A fully customizable iOS calendar library, compatible with Objective-C and Swift -
NVActivityIndicatorView
A collection of awesome loading animations -
animated-tab-bar
:octocat: RAMAnimatedTabBarController is a Swift UI module library for adding animation to iOS tabbar items and icons. iOS library made by @Ramotion -
folding-cell
:octocat: 📃 FoldingCell is an expanding content cell with animation made by @Ramotion -
TTTAttributedLabel
A drop-in replacement for UILabel that supports attributes, data detectors, links, and more -
SWTableViewCell
An easy-to-use UITableViewCell subclass that implements a swippable content view which exposes utility buttons (similar to iOS 7 Mail Application) -
MGSwipeTableCell
An easy to use UITableViewCell subclass that allows to display swippable buttons with a variety of transitions. -
JVFloatLabeledTextField
UITextField subclass with floating labels - inspired by Matt D. Smith's design: http://dribbble.com/shots/1254439--GIF-Mobile-Form-Interaction?list=users -
LTMorphingLabel
[EXPERIMENTAL] Graceful morphing effects for UILabel written in Swift. -
ViewAnimator
ViewAnimator brings your UI to life with just one line -
SwiftMessages
A very flexible message bar for iOS written in Swift. -
ViewDeck
An implementation of the sliding menu found in various iOS apps. -
JTAppleCalendar
The Unofficial Apple iOS Swift Calendar View. Swift calendar Library. iOS calendar Control. 100% Customizable -
FSPagerView
FSPagerView is an elegant Screen Slide Library. It is extremely helpful for making Banner View、Product Show、Welcome/Guide Pages、Screen/ViewController Sliders. -
TPKeyboardAvoiding
A drop-in universal solution for moving text fields out of the way of the keyboard in iOS -
XLForm
XLForm is the most flexible and powerful iOS library to create dynamic table-view forms. Fully compatible with Swift & Obj-C. -
PageMenu
A paging menu controller built from other view controllers placed inside a scroll view (like Spotify, Windows Phone, Instagram) -
Macaw
Powerful and easy-to-use vector graphics Swift library with SVG support -
SwipeCellKit
Swipeable UITableViewCell/UICollectionViewCell based on the stock Mail.app, implemented in Swift. -
SWRevealViewController
A UIViewController subclass for presenting side view controllers inspired on the FaceBook and Wunderlist apps, done right ! -
AMScrollingNavbar
Scrollable UINavigationBar that follows the scrolling of a UIScrollView -
SCLAlertView-Swift
Beautiful animated Alert View. Written in Swift -
SwiftEntryKit
SwiftEntryKit is a presentation library for iOS. It can be used to easily display overlays within your iOS apps. -
SVPullToRefresh
Give pull-to-refresh & infinite scrolling to any UIScrollView with 1 line of code. -
expanding-collection
:octocat: ExpandingCollection is an animated material design UI card peek/pop controller. iOS library made by @Ramotion -
SideMenu
Simple side/slide menu control for iOS, no code necessary! Lots of customization. Add it to your project in 5 minutes or less. -
TextFieldEffects
Custom UITextFields effects inspired by Codrops, built using Swift -
Alerts & Pickers
Advanced usage of UIAlertController and pickers based on it: Telegram, Contacts, Location, PhotoLibrary, Country, Phone Code, Currency, Date... -
Koloda
KolodaView is a class designed to simplify the implementation of Tinder like cards on iOS. -
Material Components
[In maintenance mode] Modular and customizable Material Design UI components for iOS -
LTNavigationBar
UINavigationBar Category which allows you to change its appearance dynamically -
CSStickyHeaderFlowLayout
UICollectionView replacement of UITableView. Do even more like Parallax Header, Sticky Section Header. Made for iOS 7.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of N8iveKit or a related project?
README
A set of frameworks making iOS development more fun, developed by N8ive Apps
Frameworks
- [x] InterfaceKit
- [x] AuthKit
- [ ] CoreKit (in progress)
- [ ] NetworkKit (in progress)
More frameworks to be added, stay tuned :relaxed:
InterfaceKit
NKViewController:
The base type replacement for UIViewController that adds N8iveKit
supporting logic.
NKNavigationController:
Replaces UINavigationController by adding more features:
- Ability to have different NavigationBar height for each viewController (navigation bar size interactively changes during transitions).
- Ability to enable/disable
Sloppy swiping
(swipe back gesture to be started from anywhere on the screen, not only from the left edge).
To access the NavigationBar, just call adaptableNavigationBar
property of the NKNavigationController
.
NKTabBarController:
Replaces UITabBarController by adding more features:
- Ability to automatically position the
TabBar
vertically if the screen width exceeds a certain limit (you can also choose whether to make it on the right or left of the screen). - Ability to implement your own
TabBar
layout. - In case of vertical
TabBar
,NavigationBar
of selected tab (in case it wasNKNavigationController
) is positioned on top of theTabBar
.
To access the TabBar, just call adaptableTabBar
property of the NKTabBarController
.
NKActivityIndicatorView:
Replaces UIActivityIndicatorView by adding the ability to use your own animatable layer and handle it.
NKRefreshControl:
Replaces UIRefreshControl by adding the ability to use your own animatable layer and handle it, below is an example on how to use it.
let rc = NKRefreshControl()
override func viewDidLoad() {
super.viewDidLoad()
rc.tintColor = UIColor.red
rc.addTarget(self, action: #selector(RefreshViewController.refresh), for: UIControlEvents.valueChanged)
self.scrollView.refreshControl = rc
}
@objc func refresh(){
DispatchQueue.main.asyncAfter(deadline: (DispatchTime.now() + Double(5.0))) { () -> Void in
self.rc.endRefreshing()
}
}
func scrollViewDidScroll(_ scrollView: UIScrollView) {
rc.scrollViewDidScroll(scrollView)
}
AuthKit
OAuth2Client:
The base class for handling OAuth2 flow on iOS using SFSafariViewController
, currently supportsOAuth2CodeGrant
, tested on Facebook , Google & Github (example app includes code for all).
OAuth2Client
supports custom handlers for updating UI during the authentication flow.
Requirements
- iOS 10.0+
- Xcode 9.0
- Swift 4.0
Installation
Manually
N8iveKit can be integrated manually into your project, dependency managers support coming soon.
Embedded Framework
- Add N8iveKit as a git submodule by running the following command:
$ git submodule add https://github.com/n8iveapps/N8iveKit.git
Open the
N8iveKit
folder, and drag the needed kit (currently, onlyInterfaceKit.xcodeproj
available) into the Project Navigator of your application's Xcode project.Navigate to the target configuration window by clicking on the blue project icon, and selecting the application target under the "Targets" heading in the sidebar.
In the tab bar at the top of that window, open the "General" panel.
Click on the
+
button under the "Embedded Binaries" section.Select the framework (currently
InterfaceKit.framework
).Enjoy :relaxed:
Please note that some frameworks depend on others, so you have to include all needed frameworks.
Usage
You can use Interface builder and change the element type to your desired one, or you can simple initialize the elements in code.
Included Open source libraries
Communication
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
License
N8iveKit is released under the MIT license. See LICENSE for details.
*Note that all licence references and agreements mentioned in the N8iveKit README section above
are relevant to that project's source code only.