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.
- 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
- Download the
reader.zip
file from the latest release - Unzip the file and move
reader.app
into yourApplications
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'
If you'd like to compile the app yourself, follow these steps:
-
Open Terminal and run:
git clone https://github.com/chippokiddo/reader.git cd reader
-
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
- Product Name:
- 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
-
Locate the cloned repository and open the
reader
directory in Finder. -
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.
-
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 theUtils
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.
-
-
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.
-
-
Press
⌘ + R
to build and run the app on your Mac.
reader requires network access to fetch book data via the Google Books API.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository
- Create a branch with your feature or bug fix
- Submit a pull request for review
reader uses the Merriweather font, made available under the Open Font License.