SwiftUI NewsAPI App

A Full News App based on the latest SwiftUI 3/iOS 15 API that fetches latest news from newsapi.org

Features

The app has several main features:

  1. Fetch news based on categories: general, business, science, technology, health, entertainment, sports
  2. Bookmark articles so it can be persisted even when the app restarts.
  3. Share article using native iOS share sheet UIActivityController.
  4. Read article inside a Safari Webview in modal sheet presentation.
  5. Search news based on the search query you type on the search bar.
  6. Recent search history list.
  7. Suggestion search list.

SwiftUI 3 API:

The SwiftUI 3 APIs used to build the app:

  1. Async Await, Structured Concurrency, and Actors.
  2. Task Lifecycle View Modifer.
  3. AsyncImage.
  4. Refreshable and SwipeAction on List.
  5. Actor to isolate disk persistence.
  6. Crafting Search Experience using Swift Searchable modifier. synchronous local search and async remote search, as well as providing search suggestions.

Getting Started

  • Register for an API Key at https://newsapi.org
  • Paste the key inside NewsAPI.swift file.
  • Download Xcode 13 Beta 5 or later.
  • iOS 15 Dev Beta 5 or later.
  • macOS 12 Dev Beta 5 or later.

Installation

  • Build and run the project using your iOS device with iOS 15 beta installed or use the simulator.

Tutorial

GitHub

https://github.com/alfianlosari/NewsAppSwiftUI