Memestagram is a light weight iOS Application that lets you browse through the different meme templates and view individual submissions for the same.
The app uses a simple UITableView
for the home screen and a simple UICollectionView
to implement the grid on the submissions screen.
The TagListView
library is implemented in each off the UITableViewCell
.
UICollectionViewCell
is dimensioned such that only 2 columns fit the frame. Each cell has one UIImageView
and two UILabels
for the top text and bottom text. The impact
font, generally used in memes is included in assets.
The Meme Maker API is used to get content. In particular, for the time being only the following functionality is being used.
- Get a Meme - used to get the memes based on the page number.
- Get Submissions - used to get all the submissions for a particular meme.
- To save data consumption, the
Kingfisher
image caching library is used. It doesn't fetch the image repeatedly unless its contents are changed and only loads the image once. - To conserve the data consumption and also make queries load faster, the memes are fetched based on the page number. The furthur a user scrolls, the other memes are fetched and appended to the same TableView.
NVActivityIndicatorView
- is a collection of awesome loading animations.Kingfisher
- is a powerful, pure-Swift library for downloading and caching images from the web.TagListView
- is a simple and highly customizable iOS tag list view.
This project is part of an interview task. The author holds full ownership to any part of the project that may be used as part of another project.