Study Case 4 - BookApp
##
MyBookShelf - Personal Reading Tracker Application
Note: MyBookShelf is a fictional company created for this study case. This project was developed for learning purposes and technical skills demonstration.

Personal Reading Tracker MVP
A minimalist reading tracker application designed to organize your personal library effortlessly. Simple book management without distractions.
#
About the Project
What is MyBookShelf?
MyBookShelf is an iOS mobile application that provides essential book tracking and organization tools with a minimalist approach. It solves the problem of reading apps being overly complex with social features, gamification, and excessive data tracking that distract from the core need: managing your personal library.
This project transforms the book tracking experience by focusing on what truly matters: adding books, tracking reading status, and visualizing progress, presented in a clean, distraction-free interface that respects readers’ simplicity needs.
#
Role & Responsibilities
| Role | Contribution |
|---|---|
| iOS Developer | UX/UI Design & SwiftUI Development |
| Key Focus Areas | Google Books API Integration, SwiftData, Notifications |
| Timeframe | 4 weeks (80 hours) |
| Tools | SwiftUI, SwiftData, Google Books API, Figma, Xcode |
| Deliverable | Functional TestFlight version |
#
Objectives
The 5 main MVP objectives:
- Simplify book management with essential CRUD operations only
- Focus on core information: title, author, and reading status
- Visualize reading progress with intuitive charts
- Integrate Google Books API for effortless book additions
- Personalize with custom notifications and sorting preferences
#
Process
##
✏️ Research Phase - Market Analysis
During initial consultations with MyBookShelf’s product team, they shared comprehensive market research about existing reading tracker applications and user frustration patterns.
Key findings from MyBookShelf’s market analysis:
- User pain points: Existing reading apps include social features, reviews, and gamification that complicate simple book tracking
- Usage patterns: 85% of users only need basic CRUD operations and progress visualization
- Feature overload: Users feel overwhelmed by recommendation algorithms, friend feeds, and reading challenges
MyBookShelf’s strategic positioning:
- Target readers who want personal organization without social pressure
- Focus exclusively on library management and progress tracking
- Brand values: Simplicity, privacy, and personal focus
- Critical success metric: Users can add a book in under 10 seconds
Strategic direction confirmed: Based on MyBookShelf’s vision “Your library, always at hand”, we validated that the MVP should focus exclusively on book management, status tracking, and progress visualization. Features like detailed notes, social sharing, and reading goals were deliberately excluded to maintain focus.
Key Insights:
- Readers need quick book additions without lengthy forms
- Status tracking (To Read, Reading, Finished) covers 90% of use cases
- Visual progress representation motivates continued reading
- Google Books API integration eliminates manual data entry frustration
- Brand colors (lilac purple #B19CD9, warm beige #F5E6D3) create a calm, focused atmosphere
##
📐 Design
Minimalist design strategy strictly adhering to MyBookShelf’s brand guidelines with exclusive use of lilac purple (#B19CD9) and warm beige (#F5E6D3), creating a calm and focused reading environment.
Design Process:
Initial UI designs were created in Figma to validate with the business team before development. The design prioritized clarity and quick access to essential features.
Design Decisions:
- Clean TabBar navigation for three main sections (Library, Progress, Settings)
- Card-based book list with cover images for visual recognition
- Dual chart visualization (pie chart and bar chart) for progress tracking
- Minimal form fields for book addition (title, author, status only)
- Consistent spacing and breathing room throughout the interface
- Google Books API search results in familiar list format
Design Challenge:
During development, some design decisions weren’t fully finalized, leading to mid-project adjustments. This taught the importance of complete design validation before implementation begins.
##
🔧 Development
SwiftUI architecture with SwiftData for local storage and Google Books API integration. The project began immediately after iOS 26 release, requiring simultaneous learning and implementation of new iOS features.
Tech Stack:
- SwiftUI for native iOS interface
- SwiftData for local data persistence
- Google Books API for book search and metadata
- UserNotifications framework for reading reminders
- Custom sorting and filtering logic
- TabBar navigation pattern
Development Highlights:
- Created reusable, generalized NotificationService class for future project use
- Implemented dual chart visualization (pie and bar charts) for progress tracking
- Built flexible sorting system with user preferences persistence
- Developed smart notification system that adapts to reading status
#
Technical Challenges
##
iOS 26 Integration During Development
The most significant challenge was iOS 26 releasing during project development. Starting the project immediately after the release meant learning new APIs and features while building the application simultaneously. This required adapting development approaches and occasionally refactoring code to align with iOS 26 best practices.
##
Google Books API Image Conversion
Integrating Google Books API presented an unexpected challenge: storing book cover images in SwiftData in the correct format for reuse throughout the app. The API returns image URLs that required proper format conversion and storage strategy to ensure efficient data persistence and seamless display across all views.
##
Design Evolution Mid-Project
Initially underestimating the project’s complexity led to incomplete design decisions. The assumption that the app was “simple” resulted in mid-development design adjustments, highlighting the importance of thorough planning regardless of perceived project simplicity.
#
Outcome
Users can now manage their personal book library in seconds, track reading progress visually, and receive personalized reading reminders - all in a distraction-free environment that focuses solely on their personal reading journey.
Current Status:
The application is currently deployed on TestFlight for beta testing, demonstrating all core MVP features and ready for user feedback collection.
#
Learnings
##
Technical Discoveries
- Reusable architecture: Creating generalized, reusable classes (like NotificationService) significantly improves code efficiency and future project velocity
- iOS release timing: Starting projects immediately after major iOS releases requires flexible learning approaches
- API integration complexity: Third-party APIs often require more handling than expected, especially for media content
##
Design Insights
- Never underestimate simplicity: “Simple” apps still require comprehensive design decisions upfront
- Complete design validation: Full UI/UX validation before development prevents costly mid-project adjustments
##
Process Improvements
- Design-first approach: Future projects will require 100% design sign-off before code begins
- Complexity assessment: All projects deserve thorough complexity analysis, regardless of initial perception
##
Impact on Future Projects
- Standardized code patterns: The reusable NotificationService class will accelerate future iOS projects
- Design discipline: Established new design validation checkpoints before development phases
- API integration planning: Allocate more time for third-party API integration challenges
- Learning while building: Developed effective strategies for adopting new iOS features during active development
#
Technical Specifications
Core Requirements:
- Platform: iOS 26+ (SwiftUI)
- Data Storage: SwiftData for local persistence
- API: Google Books API
- Notifications: UserNotifications framework for reading reminders
- Performance: Instant CRUD operations, smooth list scrolling
- Navigation: TabBar pattern with three main sections
Key Features Implemented:
- CRUD operations for books (title, author, status)
- Google Books API search with automatic data population
- Manual book entry fallback system
- Dual progress visualization (pie chart and bar chart)
- Custom sorting options (title, author, date added, status)
- Ascending/descending sort order controls
- Daily reading reminders with custom time selection
- User preferences persistence across sessions
Data Model:
- Book entity with required fields (title, author, status, date added)
- Optional cover image URL from Google Books API
- User preferences for sorting and notifications
- Three reading statuses: To Read, Reading, Finished
#
Gallery
| Shelve Tab | Stats Tab | Settings Tab | Book Search | Add/Edit Book |
|---|---|---|---|---|
Interested in a minimalist tracking app for your business?