Swiftpack.co - Package - AndrewBennet/ReadingList

Reading List

Build Status codebeat badge

Reading List is a free, open source iOS app for iPhone and iPad. Reading List allows users to track and catalog the books they read.


  • Xcode 10


Reading List uses a couple of package managers:

  • Mint, to manage Swift command line tool packages
  • Bundler, to manage Ruby tools

Mint can be installed using Homebrew (among other methods); Bundler can be installed with RubyGems:

brew install mint
gem install bundler


The Xcode project should be generated by running XcodeGen:

mint run yonaskolb/XcodeGen


Reading List uses various third party libraries, which are managed using CocoaPods. To ensure that CocoaPods is installed, run bundler install. To install the libraries, run:

pod install


Reading List is written in Swift, and primarily uses Apple provided technologies.


Reading List mostly uses storyboards for UI design (see below); a limited number of user input views are built using Eureka forms.

Example storyboard

Data persistence

Reading List uses Core Data for data persistence. There are three entities used in Reading List: Book, Subject and List. The attributes and relations between then are illustrated below:

Core data entities


Stars: 62
Help us keep the lights on


Used By



v1.7.6 - Mar 22, 2018

v1.7 - Feb 13, 2018

New Features

  • Custom Lists. You can now create your own lists and add whichever books you want to it. "Favourites", "Wish List", "Borrowed from the Library" - whatever you need. Add the lists from the book details page (or from the To Read / Finished pages); view the lists from the new Organise tab.

  • Reworked book details page. The book details page has had a little re-layout, to make it look nicer. On iPads, the extra space is used more effectively.

  • Share button. Easily share the title and author of a book with the share button on the book details page.


  • Numerous other tweaks and improvements.

v1.6 - Oct 10, 2017

New Features

  • Add multiple books at once when searching online: tap “Select Many” at the bottom and select the books to be added. Note: when adding multiple books, they will all be added as “To Read”
  • More "swipe" actions: the Edit Book and Reading Log screens are now accessible by swiping the table cells. They also have icons now. (iOS 11 only, sorry)
  • Edit multiple books at once: when you tap "Edit" on the book table, you can now select multiple books. You can mark them as Started or Finished, or Delete them - all at once
  • New "Find on Amazon" option available when tapping the Share/Action button on the book details screen. This takes you to a book search on your local Amazon site. Disclaimer: if you buy any books from these links, Amazon will give me a few pennies!


  • A confirmation dialog is shown when attempting to cancel a screen which has unsaved changes (e.g. editing book details)
  • New design of the Start and Finish buttons on the book details screen
  • Removed a superfluous (and confusing) Cancel button from the Online Search page


  • Fixed a typo

1.5.1 - Oct 7, 2017

Minor bug fixes

1.5 - Sep 30, 2017


  • iOS 11 support, including some visual tweaks to match the iOS 11 design style (note: marking a book as started / finished is now done by a swipe to the right, rather than to the left).
  • Dynamic text size support: the app now adjusts the text sizes according to your device's Accessibility settings
  • After adding a new book, the table now scrolls to the new book's position
  • When exporting, the file now includes the name of the device


  • Various minor bug fixes