a small app to request a joke from iCanHazDadJoke
Random | Favorites |
---|---|
- random joke in big font
- action button to add/remove favourites
- action button to share joke
- bottom buttons to sync and view favourites
- favourites a card list
- uncle bob's clean architecture, and domain driven design
- separation of concerns
- Dependency injection
- redux architecture
- RTK query instead of fetch
- application: storage and use cases, binding layers
- domain: business entities, interfaces, business critical logic
- infrastructure: implementation of repositories, data sources and mapping to domain
- presentation: presentation of data and user interaction
- rules and/or injection to handle threading and coroutines
- fake data generator
- mocking and mock network server
- in-memory database
- user interface tag verifications
- improve UX
- ML to know sentiment of joke and predict favorites
- speech bubble characters based on category or sentiment
- abstract to project template
- add more remote sources for all the jokes
- export to text-over-photo for sharing
- analytics
- allow user to add content
- theme switcher
- device home screen widget
- splash screen and logo
- Text-to-speech, laugh track
- Animations
- Monetize user customizations
- security analysis