Swiftpack.co - Package - AnderGoig/SwiftInstagram

SwiftInstagram Logo

Platforms Swift 4.0 Travis Codebeat Documentation License

CocoaPods compatible Carthage compatible Swift Package Manager


SwiftInstagram is a wrapper for the Instagram API written in Swift. It allows you to authenticate users and request data from Instagram effortlessly.

Features

  • [x] Effortless and straightforward use.
  • [x] Up-to-date with the latest Instagram API features.
  • [x] Secure access token storing, thanks to keychain-swift.
  • [x] Client-Side authentication.
  • [x] 100% documented code.
  • [x] Use of Swift 4 Decodable.
  • [x] Up-to-date with the latest Apple technologies (Swift 4, Xcode 9, etc).

Upcoming features

Requirements

  • iOS 9.0+
  • Xcode 9.0+

Usage

I've prepared a wiki page where you can find tons of useful things.

Contributing

If you have feature requests or bug reports, feel free to help out by sending pull requests or by creating new issues. Please take a moment to review the CONTRIBUTING guidelines.

Credits

SwiftInstagram is brought to you by Ander Goig and contributors to the project. If you're using SwiftInstagram in your project, attribution would be very appreciated.

Companion libraries

SwiftInstagram uses keychain-swift by @evgenyneu to safely store the access token retrieved by the authentication process.

License

SwiftInstagram is released under the MIT license. See LICENSE for details.

Author

Ander Goig, goig.ander@gmail.com

https://github.com/AnderGoig/SwiftInstagram

Github

link
Stars: 443
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

v1.1.1 - Apr 6, 2018

Added

  • Compatibility with Swift 4.1.

Fixed

  • Fix bug with media objects JSON decoding (#26).

v1.1.0 - Jan 21, 2018

Added

  • You can now use your own authentication method (Read more).
  • New success handlers on:
    • createComment()
    • deleteComment()
    • like(media: ...)
    • unlike(media: ...)
  • Search media and location by latitude and longitude:
    • func searchMedia(latitude: Double? = nil, longitude: Double? = nil, ...)
    • func searchLocation(latitude: Double? = nil, longitude: Double? = nil, ...)
  • New option to get all the permission scopes on login:
    • login(..., withScopes: [.all], ...)

Changed

  • retrieveAccessToken() method is now public (#15).
  • storeAccessToken() is also public (#17).

Fixed

  • Problem with all the HTTP POST requests (e.g. #20).

v1.0.6 - Nov 3, 2017

Added

  • JSON parser improvements.
  • General source code improvements.

Changed

  • searchLocation() method attributes lat and lng have been replaced by coordinates.
  • isSessionValid() method has been renamed to isAuthenticated (property).
  • Change key for keychain (#11).
  • Better handling of #7 bug.

v1.0.5 - Oct 18, 2017

Changed

  • The Success and Failure handlers, for all the API endpoints, are no longer nullable.

Fixed

  • Fixed the bug parsing InstagramMedia objects with a location property (#7).

v1.0.4 - Oct 10, 2017

Added

  • 100% documented code.

Changed

  • Now, the redirection URI must be defined in the Info.plist file. See wiki.
  • The createdTime attribute of the classes InstagramComment and InstagramMedia has been renamed to createdDate and returns an object of type Date.
  • Improves Codebeat GBA.

Fixed

  • Fixed the type of the returned errors.