Skip to content

iOS sample app demonstrating clean architecture, testing and modern Swift

License

Notifications You must be signed in to change notification settings

cwalcott/MyLibrary-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyLibrary

An iOS sample application demonstrating clean architecture, comprehensive testing, and modern Swift/SwiftUI development practices. This project showcases integration of local persistence, networking, reactive programming, and dependency injection in a production-ready codebase.

Overview

MyLibrary is a personal library manager that allows users to search for books using the Open Library API and save favorites locally. The app demonstrates professional iOS development patterns including MVVM architecture, protocol-oriented design, and test-driven development.

This is sample code intended to demonstrate:

  • Clean architecture and separation of concerns
  • Comprehensive unit testing with modern Swift Testing framework
  • Dependency injection and testability-first design
  • Integration of local storage and network APIs
  • Reactive programming with Combine
  • Modern SwiftUI development with previews

Features

  • Search Books: Search the Open Library catalog with debounced queries
  • Favorites Management: Save and manage favorite books locally
  • Book Details: View detailed information about books
  • Offline Support: Favorites stored in local SQLite database
  • Real-time Updates: Reactive UI updates using Combine publishers

License

This is sample code for portfolio purposes.

Contact

Costa Walcott cwalcott@gmail.com

About

iOS sample app demonstrating clean architecture, testing and modern Swift

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages