Skip to content

NewsApp is a simple and user-friendly Android news application that allows users to stay up-to-date with the latest news headlines. Users can log in securely with Firebase Authentication, save favorite news, and view article details.

Notifications You must be signed in to change notification settings

betullesen/News_Application_kotlin

Repository files navigation

News Application 📰📱


This is a simple news application built with Kotlin for Android. It is an Android news app that provides users with the latest news. Firebase Authentication allows user login, and users can save their favorite news articles. Additionally, news can be searched using the search functionality, and saved favorite news articles can be listed. The app is developed using Android's modern architecture and aims to deliver the best user experience.

Features 🚀

  • User Login: User login is performed using Firebase Authentication. Users can log in with email and password.
  • Favorite News: Users can add news to their favorites and view their favorite news. Favorite news can be deleted, and an "undo" operation can be performed.
  • News Search: Users can search for news and find the stories they want. Search results are updated in real-time.
  • News List: Current news is displayed in a list format. New news can be added to the list, and more news is loaded as the user scrolls the page.
  • Error Management: Error messages are shown during search or news loading operations.

Technologies Used 🔧

  • Kotlin: The primary language used for Android app development.

  • Firebase: Used for user authentication processes, enabling users to log in securely to access features such as saving news articles.

  • ViewBinding: A method to bind UI components, providing safer and more efficient code by reducing the need for findViewById calls.

  • Fragment: Used to create reusable UI components, making the app's interface modular and efficient across different screens.

  • LiveData: Used to observe and update UI data changes in a lifecycle-aware manner, ensuring the UI is updated with the most current information.

  • Lifecycle: Used to manage the lifecycle of the app and ensure a sustainable connection between the UI and data, preventing memory leaks.

  • Navigation Component: Used to manage screen transitions and navigation within the app, simplifying back-stack management.

  • ViewModel: Used for managing and sharing UI data, providing lifecycle-compatible data to keep the UI updated even through configuration changes.

  • RecyclerView: Used to display news articles in a list format, with support for efficient data handling and UI updates.

  • Room Database: Ensures that favorite news are stored locally on the device, allowing for offline access to saved news.

  • Retrofit: Used to make network requests and fetch news data from an API, handling the process in a clean, efficient, and type-safe manner.

  • Glide: Ensures that news images (such as thumbnails) are loaded quickly and efficiently into ImageViews, providing smooth UI interactions.

  • Coroutines: Used to manage asynchronous tasks, allowing data fetching in the background without blocking the UI and providing a responsive experience for users.

Preview 🎞


Image

Screenshots 📸


Splash Screen Login Screen News Headlines
Splash Screen Login Screen News Headlines
Favorite News Search News News Detail
News Detail Favorite News Additional Image

About

NewsApp is a simple and user-friendly Android news application that allows users to stay up-to-date with the latest news headlines. Users can log in securely with Firebase Authentication, save favorite news, and view article details.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages