Skip to content

VIPER, SwiftData, API with pagination, Service Locator, DI, async/await, OSLog, Network Status Monitor, CollectionViews with snapshots

License

Notifications You must be signed in to change notification settings

BytePixelMelody/CharactersInfoApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Platform: iOS

Characters Info App Icon

Characters Info App

Characters Info - a pet-project application with VIPER architecture and SwiftData that interacts with an online API with pagination. The application caches data, handles errors, supports dynamic font scaling and Dark Mode.

Architectural pattern

  • VIPER
  • Module Builder
  • Service locator with strong DI
  • Dependency injection

Frameworks

  • UIKit
  • SwiftData
  • OSLog
  • Network

Technologies

  • Multithreading: Async/await, Task, @MainActor, actor
  • Collection views based on snapshots
  • Web service with generics
  • Pagination with API requests limiter
  • Network Status Monitor service
  • SwiftData caching
  • Errors handling with user alerts
  • UI by code, landscape orientation support
  • Dynamic font scaling
  • Dark mode support

Code patterns

  • Protocols
  • Factories
  • Delegates

Screenshots

Videos

Common Use Dynamic Font Errors
CommonUse.mov
DynamicFont.mov
Errors.mov

Contact me

LinkedIn | Telegram | Email

About

VIPER, SwiftData, API with pagination, Service Locator, DI, async/await, OSLog, Network Status Monitor, CollectionViews with snapshots

Topics

Resources

License

Stars

Watchers

Forks

Languages