Skip to content

nirvan73/ReverbNews

Repository files navigation

ReverbNews

ReverbNews is an intelligent, AI-powered news application designed for modern Android devices. Built using Jetpack Compose and Kotlin, it delivers personalized and real-time news articles based on user-friendly, natural language queries. With offline bookmarking, clean in-app reading, and an adaptive, sleek UI, it offers a seamless and engaging reading experience based on your interests.

ReverbNews Logo


Features

  • 🔍 Gemini-powered Smart Search: Search news using natural queries like "latest tech news in India".
  • 📰 Top Headlines: Stay up-to-date with category-wise breaking news.
  • 💾 Offline Bookmarks and Favorites: Save and manage favorite articles offline using Room.
  • 🌐 In-App WebView: Open full news articles within the app—no external browser needed.
  • 📷 Fast Image Loading: Optimized news article thumbnails using Coil.
  • 📱 Adaptive Layouts: Smooth experience on all screen sizes.
  • 🔗 Easy Sharing: Share articles via link.
  • Clean MVVM Architecture: Maintainable and scalable project structure.

Tech Stack

Technology / Library Description
Kotlin Primary language used for Android development.
Jetpack Compose Modern declarative UI toolkit to build native Android UI with less code.
Hilt Dependency Injection framework to simplify dependency management in the MVVM architecture.
Retrofit Type-safe HTTP client used for making network requests to the GNews API.
Room Database Local database for storing bookmarked and favourite articles and enabling offline access.
WebView Opens full news articles inside the app using an embedded browser experience.
Coil Fast, lightweight image loading library with support for image caching.
Gemini API (Google AI) Converts user-friendly queries into smart keywords to improve news search results.
Adaptive Layouts Ensures responsive and consistent UI across various screen sizes and devices.
Lottie Animation Integrates vector-based animations to enhance user experience and feedback.

AI-Powered Smart Search

Using the Gemini API, users can type natural language queries like:

"What are the top sports headlines this weekend?"

Gemini intelligently processes the input and transforms it into optimized search keywords to fetch accurate news results.


Demo Video

Watch Demo

Setup

Setup and run ReverbNews app on your local machine by following these steps:-

1. Clone the repository:

git clone https://github.com/nirvan73/ReverbNews.git

2. Open the Project in Android Studio

  • Launch Android Studio.
  • Go to File > Open.
  • Navigate to the ReverbNews folder.
  • Click OK to open the project.
  • Let Gradle sync and finish building the project.

3. Add API Keys to enable news search and AI features:

  • Get your GNews API Key from GNews.
  • Get your Gemini API Key from Google Gemini.
  • Open your local.properties file and add the following:
GNEWS_API_KEY=your_gnews_api_key
GEMINI_API_KEY=your_gemini_api_key
  • Build and run the project in your Android Device locally or on emulator.

License

This project is licensed under the MIT License – see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages