ReadingList

by AndrewBennet

AndrewBennet / ReadingList

:books: :iphone: Reading List - an iOS app to track personal reading lists

229 Stars 37 Forks Last release: about 1 month ago (build/1856) GNU General Public License v3.0 1.9K Commits 134 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Reading List

Build Status codebeat badge Twitter URL

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.

Requirements

  • Xcode 12

Dependencies

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

XcodeGen

XcodeGen is a command-line tool written in Swift. It generates your Xcode project using your folder structure and a project spec, which contains all the information necessary to generate a project, such as targets, schemes, settings. The Xcode project should be generated by running XcodeGen:

mint run yonaskolb/XcodeGen

SwiftLint

SwiftLint is used to enforce Swift style guidelines. An Xcode build step runs SwiftLint; this requires it to be installed. To install it, run:

mint install realm/SwiftLint

CocoaPods

Reading List uses various third party libraries, some of which are managed using CocoaPods.CocoaPods focuses on source-based distribution of third party code and automatic integration into Xcode projects. To ensure that CocoaPods is installed, run

bundler install
. To install the libraries, run:
pod install

Architecture

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

User Interface

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

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.