ProtoKit is a collection of protocols and extensions that make prototyping faster and easier with Swift programming language.
.package(url: "https://github.com/Moximillian/ProtoKit.git", from: "v2.0")
ProtoKit is a collection of protocols and extensions that make prototyping faster and easier with Swift programming language
ProtoKit is structured as a Package (Swift Package Manager, SPM), each swift file contains a specific feature / functionality.
Current features are:
- SwiftUI Views
- CircleShape (can be animated)
- ProgressText (can be animated)
- SwiftUI Extensions
- UIKit Extensions
- Closurable (UIControl, UIButton, UIBarButtonItem, UIPageControl, UIGestureRecognizer)
- SourcedError (Custom ErrorType)
- NotificationService / TypedNotification (way to pass data via observing/notifying)
- SelfPresentable (casting as Self)
- Unified Collection (factory and related methods for creating UITableViewDataSources and UICollectionViewDataSources)
ProtoKit version 6.0 and later requires:
- iOS 13+ or tvOS 13+ or MacOS 10.15+
- Xcode 11.2 (Swift 5.1)
- watchOS is not supported
Protocol naming conventions
Protocol types and naming conventions used in this framework:
- Can do => -able => Hashable, RawRepresentable, Equatable
- Is a => -Type => CollectionType, SequenceType, ErrorType
- Can be => -Convertible => FloatLiteralConvertible, CustomStringConvertible
Created and maintained by @moximillian.
Unified Collection inspired by
ProtoKit is released under an MIT License. See
LICENSE for details.
Copyright © 2019-present Mox Soini.
Please provide attribution, it is greatly appreciated.