- July 30, 2025
- Mins Read
A set of frameworks making iOS development more fun, developed by N8ive Apps
More frameworks to be added, stay tuned ☺️
The base type replacement for UIViewController that adds N8iveKit
supporting logic.
Replaces UINavigationController by adding more features:
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
.
Replaces UITabBarController by adding more features:
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).TabBar
layout.TabBar
, NavigationBar
of selected tab (in case it was NKNavigationController
) is positioned on top of the TabBar
.To access the TabBar, just call adaptableTabBar
property of the NKTabBarController
.
Replaces UIActivityIndicatorView by adding the ability to use your own animatable layer and handle it.
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)
}
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.
N8iveKit can be integrated manually into your project, dependency managers support coming soon.
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, only InterfaceKit.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 ☺️
Please note that some frameworks depend on others, so you have to include all needed frameworks.
PermissionsSwiftUI displays and handles permissions in SwiftUI. It is largely inspired by SPPermissions. The UI is highly customizable and resembles an Apple style. ...
Introduction PagerTabStripView is the first pager view built in pure SwiftUI. It provides a component to create interactive pager views ...
1. Taking Action When a Property Changes: Property Observers Swift lets you observe and respond to changes in a property’s ...