Skip to content

RNEWS is a news application where you can read current news, save news and search for news.

License

Notifications You must be signed in to change notification settings

recepbrk/NewsApp

Repository files navigation

RNEWS


RNEWS is a news application where you can read current news, save news and search for news.

License API Profile

Screenshots

Light Version

Splash Screen Home Screen News Details Screen Category Screen
Main Screen Main Screen Main Screen Main Screen
Category Details Screen Save Screen Search Screen Settings Screen
Main Screen Detail Screen Detail Screen Detail Screen

Other Screenshots

Dark Version

Splash Screen Home Screen News Details Screen Category Screen
Main Screen Main Screen Main Screen Main Screen
Category Details Screen Save Screen Search Screen Settings Screen
Main Screen Detail Screen Detail Screen Detail Screen

Other Screenshots

Tech stack & Open-source libraries

  • My application supports 2 languages: English and Turkish.
  • Kotlin, Coroutines and LiveData
  • Clean Architecture
  • Navigation Component - Single activity multiple fragments approach
  • JetPack
    • LiveData - Observable lists.
    • Lifecycle - Dispose of observing data when lifecycle state changes.
    • Fragment-ktx - A set of Kotlin extensions that helps with fragment lifecycle.
    • View Binding - Allows you to more easily write code that interacts with views
    • Data Binding - Data Binding is the process of binding data to a layout xml file.
    • ViewModel - UI related data holder, lifecycle aware.
  • Firebase
  • Hilt is a dependency injection library for Android
  • Room persistence library provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite.
  • Retrofit A type-safe HTTP client for Android
  • Glide - Glide is a fast and efficient open source media management and image loading framework for Android
  • Coil - Coil is a fast and efficient open source media management and image loading framework for Android
  • Localization - Two language options are available in the application using Localization

Architecture

This app uses MVVM (Model View View-Model) architecture

API Key 🔑

  • You will need to provide a private key to retrieve data from the NEWS API.
  • Generate a new key from here.

API_KEY = YOUR_API_KEY

Videos

Find this repository useful?

  • Don't forget give a star. ⭐
  • You can follow me on Github 💻
  • Profile

Licence

    Designed and developed by 2024 recepbrk (Recep Güzel)

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

Releases

No releases published

Packages

No packages published

Languages