├── README.md ├── Snakey List.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist └── xcuserdata │ ├── ali.xcuserdatad │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ │ ├── MylivnTask.xcscheme │ │ └── xcschememanagement.plist │ └── aliadam.xcuserdatad │ ├── xcdebugger │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ └── xcschememanagement.plist ├── Snakey List ├── AppDelegate.swift ├── ApplicationViewControllers │ ├── ItemsGridScreen │ │ ├── ItemsGridRouter.swift │ │ ├── ItemsGridViewController.swift │ │ └── ItemsGridViewModel.swift │ └── SplashScreen │ │ ├── SplashRouter.swift │ │ ├── SplashViewController.swift │ │ └── SplashViewModel.swift ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon-App-20x20@1x.png │ │ ├── Icon-App-20x20@2x.png │ │ ├── Icon-App-20x20@3x.png │ │ ├── Icon-App-29x29@1x.png │ │ ├── Icon-App-29x29@2x.png │ │ ├── Icon-App-29x29@3x.png │ │ ├── Icon-App-40x40@1x.png │ │ ├── Icon-App-40x40@2x.png │ │ ├── Icon-App-40x40@3x.png │ │ ├── Icon-App-57x57@1x.png │ │ ├── Icon-App-57x57@2x.png │ │ ├── Icon-App-60x60@2x.png │ │ ├── Icon-App-60x60@3x.png │ │ ├── Icon-App-72x72@1x.png │ │ ├── Icon-App-72x72@2x.png │ │ ├── Icon-App-76x76@1x.png │ │ ├── Icon-App-76x76@2x.png │ │ ├── Icon-App-83.5x83.5@2x.png │ │ ├── Icon-Small-50x50@1x.png │ │ ├── Icon-Small-50x50@2x.png │ │ └── ItunesArtwork@2x.png │ ├── Contents.json │ ├── SnakeyList.imageset │ │ ├── Contents.json │ │ ├── iTunesArtwork@1x.png │ │ ├── iTunesArtwork@2x.png │ │ └── iTunesArtwork@3x.png │ ├── deleteIMG.imageset │ │ ├── Contents.json │ │ └── deleteIMG.png │ └── placeholder.imageset │ │ ├── Contents.json │ │ └── placeholder.png ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard ├── Helpers │ ├── AlertControllerHelper.swift │ ├── AsyncImageDownloader.swift │ ├── Extension │ │ ├── StringExtension.swift │ │ ├── UIImageViewExtension.swift │ │ └── UIViewExtension.swift │ ├── LocalizableWords.swift │ ├── MockLoader.swift │ └── StoryboardScene.swift ├── Info.plist ├── Layouts │ └── SnakeUICollectionLayout.swift ├── Models │ ├── Item.swift │ └── ItemsList.swift ├── Network │ ├── APPError.swift │ ├── NetworkProvider.swift │ └── NetworkResponse.swift ├── Resources │ └── ItemsList.json └── Views │ ├── DraggingView.swift │ └── ItemCell.swift └── screenshots ├── 1.gif └── 2.gif /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/README.md -------------------------------------------------------------------------------- /Snakey List.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Snakey List.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Snakey List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist -------------------------------------------------------------------------------- /Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcschemes/MylivnTask.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcschemes/MylivnTask.xcscheme -------------------------------------------------------------------------------- /Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/xcuserdata/ali.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Snakey List.xcodeproj/xcuserdata/aliadam.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/xcuserdata/aliadam.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist -------------------------------------------------------------------------------- /Snakey List.xcodeproj/xcuserdata/aliadam.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List.xcodeproj/xcuserdata/aliadam.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Snakey List/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/AppDelegate.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridRouter.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridViewController.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/ItemsGridScreen/ItemsGridViewModel.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/SplashScreen/SplashRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/SplashScreen/SplashRouter.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/SplashScreen/SplashViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/SplashScreen/SplashViewController.swift -------------------------------------------------------------------------------- /Snakey List/ApplicationViewControllers/SplashScreen/SplashViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/ApplicationViewControllers/SplashScreen/SplashViewModel.swift -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/SnakeyList.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/SnakeyList.imageset/Contents.json -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@1x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@2x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/SnakeyList.imageset/iTunesArtwork@3x.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/deleteIMG.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/deleteIMG.imageset/Contents.json -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/deleteIMG.imageset/deleteIMG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/deleteIMG.imageset/deleteIMG.png -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/placeholder.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/placeholder.imageset/Contents.json -------------------------------------------------------------------------------- /Snakey List/Assets.xcassets/placeholder.imageset/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Assets.xcassets/placeholder.imageset/placeholder.png -------------------------------------------------------------------------------- /Snakey List/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Snakey List/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /Snakey List/Helpers/AlertControllerHelper.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/AlertControllerHelper.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/AsyncImageDownloader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/AsyncImageDownloader.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/Extension/StringExtension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/Extension/StringExtension.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/Extension/UIImageViewExtension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/Extension/UIImageViewExtension.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/Extension/UIViewExtension.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/Extension/UIViewExtension.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/LocalizableWords.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/LocalizableWords.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/MockLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/MockLoader.swift -------------------------------------------------------------------------------- /Snakey List/Helpers/StoryboardScene.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Helpers/StoryboardScene.swift -------------------------------------------------------------------------------- /Snakey List/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Info.plist -------------------------------------------------------------------------------- /Snakey List/Layouts/SnakeUICollectionLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Layouts/SnakeUICollectionLayout.swift -------------------------------------------------------------------------------- /Snakey List/Models/Item.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Models/Item.swift -------------------------------------------------------------------------------- /Snakey List/Models/ItemsList.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Models/ItemsList.swift -------------------------------------------------------------------------------- /Snakey List/Network/APPError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Network/APPError.swift -------------------------------------------------------------------------------- /Snakey List/Network/NetworkProvider.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Network/NetworkProvider.swift -------------------------------------------------------------------------------- /Snakey List/Network/NetworkResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Network/NetworkResponse.swift -------------------------------------------------------------------------------- /Snakey List/Resources/ItemsList.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Resources/ItemsList.json -------------------------------------------------------------------------------- /Snakey List/Views/DraggingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Views/DraggingView.swift -------------------------------------------------------------------------------- /Snakey List/Views/ItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/Snakey List/Views/ItemCell.swift -------------------------------------------------------------------------------- /screenshots/1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/screenshots/1.gif -------------------------------------------------------------------------------- /screenshots/2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AliAdam/Snakey-List/HEAD/screenshots/2.gif --------------------------------------------------------------------------------