- Quote submission: enter your name for submission credit in the app's "Newest Quotes" section
- User navigation flows from clicking on the widget or notifications -> should lead to that quote in the app (perhaps in an expanded view, as opposed to the base quote box)
- Onboarding user navigation flow for first-launch to get a user's widget and notifications set up
- Google Image Search API integration to fetch author images ad-hoc
- Based on user quote interactions (like, save, etc.), they'll be shown more similar quotes
- Integrate LLM to analyze
bookmarkedQuotes
andlikedQuotes
fromlocalQuotesService
, to come up with relevant search queries to my API, Quote-Dropper
- Integrate LLM to analyze
Please take a look at the Projects tab Kanban board for the best representation as to what I'm working on, and what my current priorities are for this app.
- Re-architected to follow MVVM (Model-View-ViewModel) file/code structure
- Incorporated Dependency Injection
- For the primary benefit of unit testing with mock services
- PR #130: Unit tests with Dependency Injection for Mock Services (New)
- Also, to decouple logic between views and view models, while ensuring the View Model doesn't depend on the View (only a dependency in the opposite direction)
- For the primary benefit of unit testing with mock services
- Re-wrote closures with memmory leak prevention in mind, using
weak self
- PR #134: Memory Leaks & Compiler Optimization
- Various Refactoring:
- Memory Leak Unit Testing
- See this Stackoverflow Q&A of mine for more context
- Continuing refactoring efforts, for these two files in particular (bloated and could have helper functions for repeated work or separation of logic, to follow the SOLID - Single Responsibility principle more closely)
QuoteDropletWidget.swift
APIService.swift
- Incorporate UI Testing