VTAcknowledgementsViewController alternatives and similar libraries
Based on the "Utility" category.
Alternatively, view VTAcknowledgementsViewController alternatives based on common mentions on social networks and blogs.
-
swift-algorithm-club
Algorithms and data structures in Swift, with explanations! -
SwifterSwift
A handy collection of more than 500 native Swift extensions to boost your productivity. -
BlocksKit
The Objective-C block utilities you always wish you had. -
libextobjc
A Cocoa library to extend the Objective-C programming language. -
MMWormhole
Message passing between iOS apps and extensions. -
Then
✨ Super sweet syntactic sugar for Swift initializers -
InAppSettingsKit
This iOS framework allows settings to be in-app in addition to or instead of being in the Settings app. -
EZSwiftExtensions
:smirk: How Swift standard types and classes were supposed to work. -
DifferenceKit
💻 A fast and flexible O(n) difference algorithm framework for Swift collection. -
EKAlgorithms
EKAlgorithms contains some well known CS algorithms & data structures. -
Reusable
A Swift mixin for reusing views easily and in a type-safe way (UITableViewCells, UICollectionViewCells, custom UIViews, ViewControllers, Storyboards…) -
ObjectiveSugar
ObjectiveC additions for humans. Ruby style. -
GroundControl
Remote configuration for iOS -
Closures
Swifty closures for UIKit and Foundation -
Underscore.m
A DSL for Data Manipulation. -
SwiftTweaks
Tweak your iOS app without recompiling! -
SwiftLinkPreview
It makes a preview from an URL, grabbing all the information such as title, relevant texts and images. -
WhatsNew
Showcase new features after an app update similar to Pages, Numbers and Keynote. -
BFKit-Swift
BFKit-Swift is a collection of useful classes, structs and extensions to develop Apps faster. -
ios_system
Drop-in replacement for system() in iOS programs -
Sugar
:coffee: Something sweet that goes great with your Cocoa -
BFKit
BFKit is a collection of useful classes and categories to develop Apps faster. -
RateLimit
Simple utility for only executing code every so often. -
Pantry
The missing light persistence layer for Swift -
ReadabilityKit
Preview extractor for news, articles and full-texts in Swift -
ObjectiveKit
Swift-friendly API for a set of powerful Objective C runtime functions. -
SwiftFoundation
Cross-Platform, Protocol-Oriented Programming base library to complement the Swift Standard Library. (Pure Swift, Supports Linux) -
YOLOKit
Getting square objects down round holes -
AssistantKit
Easy way to detect iOS device properties, OS versions and work with screen sizes. Powered by Swift. -
SwiftRandom
A tiny generator of random data for swift -
Validated
A Swift μ-Library for Somewhat Dependent Types -
DeviceGuru
DeviceGuru is a simple lib (Swift) to know the exact type of the device, e.g. iPhone 6 or iPhone 6s. Please ⭐️ this repo on the top right corner to make this repo popular. -
Eject
An eject button for Interface Builder to generate swift code -
SwiftyUtils
All the reusable code that we need in each project -
Retry
Haven't you wished for `try` to sometimes try a little harder? Meet `retry` -
AppVersionMonitor
Monitor iOS app version easily. -
Standard Template Protocols
Protocols for your every day iOS needs -
YAML.framework
Proper YAML support for Objective-C. Based on recommended libyaml. -
SBConstants
Generate a constants file by grabbing identifiers from storyboards in a project. -
ReflectableEnum
Reflection for enumerations in Objective-C. -
ZamzamKit
A Swift package for rapid development using a collection of micro utility extensions for Standard Library, Foundation, and other native frameworks. -
SwiftRouter
A URL Router for iOS, written in Swift -
Cent
Extensions for Swift Standard Types and Classes -
OrderedSet
A Swift collection of unique, ordered objects -
XestiMonitors
An extensible monitoring framework written in Swift -
Datez
📆 Breeze through Date, DateComponents, and TimeInterval with Swift!
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 VTAcknowledgementsViewController or a related project?
README
VTAcknowledgementsViewController
Acknowledgements screen displaying a list of licences, for example from CocoaPods dependencies.
Also available in Swift with AcknowList.
Features
- Automatically load acknowledgments from CocoaPods-generated file
- Remove unnecessary line breaks from licences for better text wrapping
- Optional list header and footer
- Tappable links in header, footer, and acknowledgment text
- Storyboard support
- Dark Mode support
- Dynamic Type support, with automatic font adjustment
- Localized in 12 languages
How to Install
CocoaPods is the most common solution to install this library.
- Add
pod 'VTAcknowledgementsViewController'
to yourPodfile
. - Run
pod install
. - Add the
Pods-#target#-acknowledgements.plist
file generated by CocoaPods inPods/Target Support Files/Pods-#target#/
to your main target (drag and drop the file in your Xcode project). Don’t copy the file, leaveCopy items if needed
unchecked.
Initialization
The VTAcknowledgementsViewController
instance is usually pushed to an existing UINavigationController
.
VTAcknowledgementsViewController *viewController = [VTAcknowledgementsViewController acknowledgementsViewController];
[self.navigationController pushViewController:viewController animated:YES];
By default, the controller will try to guess the name of your .plist
file, based on the bundle name (Pods-#bundle-name#-acknowledgements.plist
). If that doesn’t match the file you’re looking for, you can initialize the view controller with a custom file name or path.
viewController = [[VTAcknowledgementsViewController alloc] initWithFileNamed:@"Pods-MyTarget-acknowledgements"];
NSString *path = [[NSBundle mainBundle] pathForResource:@"Pods-MyTarget-acknowledgements" ofType:@"plist"];
viewController = [[VTAcknowledgementsViewController alloc] initWithPath:path];
Customization
If you need to include licenses that are not part of the generated plist
file, or if you don’t want to use the generated plist
at all, you can easily create new VTAcknowledgement
instances, and set them as the acknowledgements array of the controller.
VTAcknowledgement *customLicense = [[VTAcknowledgement alloc] initWithTitle:@"..." text:@"..." license:nil];
viewController.acknowledgements = @[customLicense];
The controller can also display a header and a footer. By default, they are loaded from the generated plist
file, but you can also directly change the properties values.
viewController.headerText = @"We love open source software.";
viewController.footerText = @"Powered by CocoaPods.org";
The controller title is a localized value for “acknowledgements”. You might want to use this localized value for the button presenting the controller.
NSString *localizedTitle = [VTAcknowledgementsViewController localizedTitle];
[button setTitle:localizedTitle forState:UIControlStateNormal];
If you need to further customize the appearance or behavior of this pod, feel free to subclass its classes.
Apple TV
VTAcknowledgementsViewController is also compatible with tvOS for Apple TV apps.
Requirements
VTAcknowledgementsViewController supports iOS 8.0 or tvOS 9.0 and above, and requires Xcode 11.0 and above. If you need lower requirements, look for an older version of this repository.
Credits
VTAcknowledgementsViewController was created by Vincent Tourraine, and improved by a growing list of contributors.
License
VTAcknowledgementsViewController is available under the MIT license. See the [LICENSE.md](./LICENSE.md) file for more info.
*Note that all licence references and agreements mentioned in the VTAcknowledgementsViewController README section above
are relevant to that project's source code only.