https://github.com/kaiinui/ios-awesome-libraries
Also in iOS, there are many awesome libraries!
https://github.com/kaiinui/ios-awesome-libraries
List: ios-awesome-libraries
Last synced: 14 days ago
JSON representation
Also in iOS, there are many awesome libraries!
- Host: GitHub
- URL: https://github.com/kaiinui/ios-awesome-libraries
- Owner: kaiinui
- License: mit
- Created: 2014-08-19T07:26:58.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-11-04T21:16:00.000Z (over 10 years ago)
- Last Synced: 2024-05-23T04:09:36.647Z (11 months ago)
- Size: 223 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- fucking-lists - ios-awesome-libraries
- awesomelist - ios-awesome-libraries
- collection - ios-awesome-libraries
- lists - ios-awesome-libraries
README
ios-awesome-libraries
=====================Also in iOS, there are many awesome libraries!
[JTSImageViewController](https://github.com/jaredsinclair/JTSImageViewController)
Lightbox for iOS
[RS3DSegmentedControl](https://github.com/rsoffer/RS3DSegmentedControl)

[pop](https://github.com/facebook/pop)
```objc
POPSpringAnimation *anim = [POPSpringAnimation animation];
...
[layer pop_addAnimation:anim forKey:@"myKey"];
```[JGActionSheet](https://github.com/JonasGessner/JGActionSheet)
![]()
[THCalendarDatePicker](https://github.com/hons82/THCalendarDatePicker)

[SSAppURLs](https://github.com/splinesoft/SSAppURLs)
```objc
if (deviceSupportsSkype) {
[[UIApplication sharedApplication] openAppType:SSAppURLTypeSkype
withValue:@"415-555-1212"];
}if (deviceHasChrome) {
[[UIApplication sharedApplication] openAppType:SSAppURLTypeChromeHTTP
withValue:@"http://www.splinesoft.net"];
}
```[IntentKit](https://github.com/intentkit/IntentKit) - An easier way to handle third-party URL schemes in iOS apps.

[oxen](https://github.com/jacksonh/oxen) - Observable collection in iOS.
```objc
self.array.onCollectionChanged = ^(id change) {
self.itemsArray = change.currentArray;
if ([change isKindOfClass:[OXNItemAddedChangeInfo class]]) {
[self.collectionView inserItemAtIndex:[NSIndexPath indexPathForItem:change.index inSection:1]];
}
};
```[KeepLayout](https://github.com/iMartinKiss/KeepLayout) - Easy programmable AutoLayout.
```objc
[view keepSize:CGSizeMake(100, 200)];
[view keepInsets:UIEdgeInsetsMake(10, 20, 30, 40)];
[view keepCentered];
```[KVOController](https://github.com/facebook/KVOController) - Super handy KVO.
```objc
FBKVOController *KVOController = [FBKVOController controllerWithObserver:self];
[KVOController observe:clock keyPath:@"date" options:NSKeyValueObservingOptionInitial|NSKeyValueObservingOptionNew block:^(ClockView *clockView, Clock *clock, NSDictionary *change) {
// update clock view with new value
clockView.date = change[NSKeyValueChangeNewKey];
}];
```[ClusterPrePermissions](https://github.com/clusterinc/ClusterPrePermissions)

Asset
---[LKAssetsLibrary](https://github.com/lakesoft/LKAssetsLibrary)

Support
---[rdotm](https://github.com/ksoichiro/rdotm) - R.java in iOS!

[Chameleon](https://github.com/VAlexander/Chameleon) - A Lightweight x Powerful Flat Color Framework

Testing
===- [Specta](https://github.com/specta/specta) & [Expecta](https://github.com/specta/expecta)
```objc
describe(@"Foo", ^{
beforeAll(^{
// All asynchronous matching using `will` and `willNot`
// will have a timeout of 2.0 seconds
[Expecta setAsynchronousTestTimeout:2];
});
if(@"foo should be foo", ^{
expect(@"foo").to.equal(@"foo");
});it(@"will not be nil", ^{
// Test case where default timeout is used
expect(foo).willNot.beNil();
});
});
```- [OCMockito](https://github.com/jonreid/OCMockito)
```objc
NSMutableArray *mockArray = mock([NSMutableArray class]);
[mockArray addObject:@"one"];
[verify(mockArray) addObject:@"one"];NSArray *mockArray = mock([NSArray class]);
[given([mockArray objectAtIndex:0]) willReturn:@"first"];
```- [UI Auto Monkey](https://github.com/jonathanpenn/ui-auto-monkey)
[Screencast](http://vimeo.com/channels/trianglecocoa/54727965)