Skip to content

Simple book library and reading tracker for macOS

License

Notifications You must be signed in to change notification settings

chippokiddo/reader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

reader

reader is a simple book library and reading tracker app for macOS, designed and developed in Swift. It was purposefully built for personal use and to share with a friend, making it easier to manage book collections and track reading progress.

Screenshot

Download Platform Requirements License

Features

  • Add and organize books in your personal library
  • Notes section: jot down thoughts or annotations
  • Quotes section: save memorable excerpts
  • Track reading statuses: unread, reading, or read
  • Sort, search, or filter your personal library with ease

Install

  • Download the reader.zip file from the latest release
  • Unzip the file and move reader.app into your Applications folder
  • Control-click or right-click the app and select 'open'

Note

Since reader is not notarized, macOS Gatekeeper may block the app:

  • Go to System Settings > Privacy & Security
  • Scroll down and locate the prompt for reader.app
  • Click 'open anyway'

Compiling reader

If you'd like to compile the app yourself, follow these steps:

  1. Open Terminal and run:

    git clone https://github.com/chippokiddo/reader.git
    cd reader
  2. Create a New Xcode Project

    • Open Xcode
    • Select Create a new Xcode project
    • Choose App under the macOS tab and click Next.
    • Enter the following details:
      • Product Name: reader
    • Set the Language to Swift and User Interface to SwiftUI.
    • Choose a location to save the project.

Important

Ensure you are running macOS 14 or higher and have Xcode 16 or later installed, as the project uses Swift 6

  1. Locate the cloned repository and open the reader directory in Finder.

  2. Drag and drop the following folders and files into your Xcode project:

    .
    └── reader/
        ├── Assets.xcassets
        ├── ContentView.swift
        ├── Helpers
        ├── Info.plist
        ├── Merriweather
        ├── Modells
        ├── Preview Content
        ├── reader.entitlements
        ├── Subviews
        ├── Utils
        └── Views
    
    • When prompted, ensure the Copy items if needed option is checked and click Finish.
  3. Add Your Google Books API Key

    • The app uses the Google Books API to fetch book data. You need to provide your own API key for the app to function.

    • Open the DataManager.swift file located in the Utils folder.

    • Locate the placeholder for the API key:

      private let apiKey = "GOOGLE_BOOKS_API_KEY"
    • Replace "GOOGLE_BOOKS_API_KEY" with your actual Google Books API key. You can obtain a key from the Google Cloud Console.

  4. Configure Signing to Run Locally

    • In Xcode, open the Signing & Capabilities tab for the reader target.

    • Under Signing, set the Team dropdown to None.

    • Under Signing → macOS, set the Signing Certificate to Sign to Run Locally.

  5. Press ⌘ + R to build and run the app on your Mac.

Permissions

reader requires network access to fetch book data via the Google Books API.

Contribute

Contributions are welcome! Follow these steps to contribute:

  1. Fork the repository
  2. Create a branch with your feature or bug fix
  3. Submit a pull request for review

Acknowledgements

reader uses the Merriweather font, made available under the Open Font License.