Skip to content

daehan-lim/cubadebate-app

Repository files navigation

Cubadebate News Reader

Kotlin MVVM Room Coroutines Retrofit Moshi Material Design Navigation ViewBinding DataBinding Glide JSoup Material Dialogs

A modern Android news reader application that provides an enhanced interface for Cubadebate, Cuba's leading news platform. The app offers sophisticated offline capabilities, personalized content delivery, and a rich feature set built with modern Android development practices.

Screenshots


Video Walkthrough

Watch the Video

Key Features

  • Offline article caching with full content and image support
  • Customizable news feed with category and topic personalization
  • Voice-enabled search with advanced filtering
  • Dynamic article view with TTS, in-text search, and browser redirection
  • Real-time topic management with dynamic search, post count analytics, and automatic list reordering
  • SMS subscription service for news alerts
  • Nested comment system supporting three levels of discussion threads
  • Quick access menu with adaptive category history
  • Infinite scroll with efficient data loading
  • Material Design implementation with fluid animations

Architecture

The application follows the MVVM (Model-View-ViewModel) architecture with the Repository pattern. The project structure is organized into the following main components:

├── database/         # Room database implementation
├── model/            # Data models and entities
├── network/          # API service and network utilities
├── repository/       # Repository layer for data handling
├── ui/               # UI components including Activities, Fragments, ViewModels
└── util/             # Utility classes and extensions

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

Feature-rich news reader app enabling personalized content delivery and comprehensive offline access (2021)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors