/test_git_2

Test Git 2

Primary LanguagePython

Gallery with Infinite Scroll

Language, Editor and Platform versions used in this project:

  • Language: Swift 4.2
  • Platform: iOS 12
  • Editor: Xcode 10.1

Sample Project Details

Build a simple app with following user flows:

  1. Screen 1 - User inputs full name and clicks on start

    • If text is empty, show simple alert.
    • Else show full name label and current time, followed by infinite scroll grid of images (loaded over the internet).
    • Images can be obtained from imgur APIs [https//apidocs.imgur.com] or any other convenient source of large images.
  2. Screen 2 - Gallery Screen

    • Infinite scroll grid of images.

Following points to be considered:

  1. Current time must update at less than 1s frequency so we can see milliseconds
  2. Scroll bar should not be visible
  3. Scrolling should be smooth
  4. Limit memory usage, infinite scrolling should not crash the app
  5. Images should load fast
  6. Should work across different aspect ratios and the notch.

The focus is on the layout, making sure it adjusts across devices of various sizes and performance of the app. Write clean maintainable code following standard conventions.

Deliverables

  • Modular and working code
  • Build and run instructions
  • Further enhancements/proposals
  • Optional but preferred: Testflight or some other mechanism of delivering the application.

Additional features

  • Forward button disabled when no page to forward
  • Option to remove bookmark
  • Progress bar to show loading progress
  • Persistence of bookmarks after quitting app

Screencast

Screencast video Gallery Demo

Screenshot Images

simulator screen shot - iphone xr - 2018-12-02 at 22 53 33

simulator screen shot - iphone xr - 2018-12-02 at 22 54 265

simulator screen shot - iphone 5s - 2018-12-02 at 22 55 03

simulator screen shot - iphone 5s - 2018-12-02 at 22 55 27

simulator screen shot - ipad air - 2018-12-02 at 22 56 31

simulator screen shot - ipad air - 2018-12-02 at 22 56 38