Android multimedia application with weather forecasts, a news feed in every language , and Live TV using youtube live.
Provides localized and detailed Weather reports based on the user's location:
### News FeedProvides a feed to current world events and other important news:
Browse and View Live News Channels via Youtube Live:
DBWeather utilizes a modular style of project structure, which divides the project into Modules based on Features and Layers of the Application's Architecture. Such modules include:
Front end View implementations and Android Framework Classes. Presenters and Contracts for the frond end are defined in separate modules.
Global high level Interfaces and Utilities.
Backend implementations to local and remote Datasources. Keeping them in a separate module increases modularity and separation of concerns.
Contains Entities based on the Problem Domain, and high level contracts which define the repositories implemented in the data module.
Contains logic and contracts which define the front end of the News Feed.
Contains logic and contracts which define the front end of the Live TV features.
Contains logic and contracts which define the front end of the Weather feature.
DBWeather utilizes a highly modular Clean Architecture which is based on ideas from multiple styles of Architecture, including MVP, MVVM. The goal of these principles is to encourage:
- Decoupling/Separation of Concerns by dividing Presentation, Domain, and Data logic/contracts from their respective interfaces. This allows different modules of the project to be changed, without necessitating changes in other modules.
- High Legibility due to proper separation of concerns, which leads to descriptive and unambiguous names (Weather, News, etc.).
DBWeather uses a wide array of industry standard APIs in places where it makes sense to use them. Such APIs include (but not limited to):
- Dagger 2 for Dependency Injection
- Android's AAC (Room) for Data Persistence
- Retrofit 2 + OKHttp for Network IO
- RxJava 2 for concurrency and event logic
https://play.google.com/store/apps/details?id=com.dbeginc.dbweather
https://twitter.com/darel_bitsy