Movie
App shows you collections of TV streaming and other movies. Movie app written in Swift & UIKit using the Custom API created on the Mocky website. App built using the MVVM architecture and 100% programmatic UI (No Storyboard).
Screen Shots
Table of Contents
Description
- App shows you collections of TV streaming and other movies.
- Layout created using a UICollectionviewCompositionalLayout.
- Project was completed using 100% programmatic UI (No Storyboard).
- App built using the MVVM architecture.
- This app includes descriptions for each movie as well as trailers and the movie’s rating.
- Movie also contains movies that are from paid apps such as Netflix.
- User can view movie details by tapping on a cell.
- All images are cached uising SDWebImage cocoapod.
- Movie details page contain backdrop and poster image, overview, duration and other relevant information.
- User can view trailer of a particular movie in the youtube app or a web browser.
- It also features the best movies that refresh weekly so you can choose and watch the latest movies that have the best ratings.
Todo
- Refresh API data - trailer ulr, description, comments, rating for each movie.
Dependencies
# | Library | Description |
---|---|---|
1 | SwiftLint | A tool to enforce Swift style and conventions. SwiftLint enforces the style guide rules that are generally accepted by the Swift community. |
2 | SwiftGen | SwiftGen is a tool to automatically generate Swift code for resources of your projects (like images, localised strings, etc), to make them type-safe to use. |
3 | SDWebImage | This library provides an async image downloader with cache support. |
4 | SnapKit | SnapKit is a DSL allows building constraints with minimal amounts of code while ensuring they are easy to read and understand. |
Frameworks
- UIKit
- WebKit
Resources
- Design - Figma design created by Mehri Fekri
- API - Link to Mocky
How To Use
- Clone the project and run it on Xcode 12 or above.
- Open a terminal window, and $ cd into your project directory.
- Run $ pod install.
- Open the Movie.xcworkspace.
Author Info
- Telegram - @siuzannq