VK Photos (formally Photos for VK)
VK Photos is an iOS app for manage albums and photos in social network VKontakte (vk.com)
Screenshots
Disclaimer
-
⚠️ The repository contains tons of comments and todos in Russian language -
🖼 I deleted all assets except App logo because the license agreements requires it -
🔬 This source code is not for production and not for distribution. I shared it just for educational purposes
Requirements
- Xcode 9 and later
- iOS 11 and later
- Swift 4 and later
- Carthage
Try App
You can try VK Photos by downloading the app to your iPhone from App Store. It's free (iOS 11+ required)
UPD 09/2019: The application was removed from the App Store because I did not renew my developer license
Installation
- Create VK application: vk.com
- Obtain your VK app ID and insert it into
AppDelegate.swift
- Run Carthage:
$ carthage update --platform ios
- You should add the compiled frameworks to your project manually
- Install Firebase SDK: documentation (or just mute all Analytics calls, you probably dont need it)
- Copy your
GoogleService-Info.plist
file toVKPhotos/
source directory - ...
- and unfortunately no matter how perfect you are done you will not be able to run the application properly in the simulator
Why app doesn't display anything when running in simulator? (or just crash)
Because VK Photos app use many custom API calls.
To simplify the logic of the app in some places I wrote a lot of custom API methods using greate execute method. These methods are stored on the VK API servers and accessible only to my VK application. For obvious reasons, these methods I can not disclose.
TODO
- Describe the structure of the repository
- Add build scripts to installation instruction
Credits
- Serrata - Swift image gallery (LICENSE)
- Hydra - Promises, Async & Await Library in Swift (LICENSE)
- VK SDK - iOS SDK for VK API (LICENSE)
- RxSwift - Reactive Programming in Swift (LICENSE)
- Alamofire - HTTP Networking in Swift (LICENSE)
- DeepDiff - Diffing tool in Swift (LICENSE)
- UICircularProgressRing - Circular progress bar in Swift (LICENSE)
- SwifterSwift - Swift extensions to boost your productivity (LICENSE)
- Kingfisher - Downloading and caching images from the web (LICENSE)
- Reachability (LICENSE)
- GSMessages (LICENSE)
- M13Checkbox (LICENSE)
- BEMCheckBox (LICENSE)
- PKHUD (LICENSE)
- STLoadingGroup (LICENSE)
- Spring (LICENSE)
Author
Developed by Yury Smidovich.
License
VK Photos is available under the GNU General Public License v3.0. See the LICENSE file for more info.