News App πŸ“± built to demonstrate the use of SwiftUI 3 features, Async/Await, CoreData and MVVM architecture pattern.

Last update: May 1, 2022

GitHub Cards Preview

Box Feed

News App πŸ“± built to demonstrate the use of following features,

  • SwiftUI 3
    • Async/Await
    • AsyncImage
    • List
      • Refreshable
      • Swipe Actions
      • Separator
  • Core Data
  • MVVM Architecture Pattern

Made with love ❀️ by Sameer Nawaz


Preview

Home Article Bookmarks

Note

Once you clone the repo,

  • Add your own API key from News API in AppConfig file
  • Checkout your current plan. The News API has limit for developer plan on dates query and content chars

Built With πŸ› 

  • SwiftUI - SwiftUI is an innovative, exceptionally simple way to build user interfaces across all Apple platforms with the power of Swift.
  • CoreData - Framework used to manage the model layer objects in the application.
  • Figma - Figma is a vector graphics editor and prototyping tool which is primarily web-based.

Project Structure

BoxFeed # Target
|
β”œβ”€β”€ Resources
|
β”œβ”€β”€ Library
|   β”œβ”€β”€ CoreData            # CoreData ManagedObject
|   β”œβ”€β”€ Helpers             # All extension functions + CustomViews
|   β”œβ”€β”€ Models              # Decodable models
|   β”œβ”€β”€ Services            # NewsService
|
β”œβ”€β”€ Screens
|   |
|   β”œβ”€β”€ view
|   β”‚   β”œβ”€β”€ main                    # Main root folder
|   |   β”‚   β”œβ”€β”€ view                # SwiftUI MainView
|   |   β”‚   └── viewmodel           # ViewModel for MainView
|   β”‚   β”œβ”€β”€ Home                    # Home root folder
|   |   |   |__ Home                # Home
|   β”‚   β”œβ”€β”€ Article                 # Article root folder
|   |   |   |__ Article             # Article
|   β”‚   β”œβ”€β”€ Bookmarks               # Bookmarks root folder
|   |   |   |__ Bookmarks           # Bookmarks
|

Contribute

If you want to contribute to this app, you're always welcome! See Contributing Guidelines.


Donation

If this project helped you reduce time to develop, you can buy me a cup of coffee :)


Buy Me A Coffee

License

    Apache 2.0 License


    Copyright 2021 Sameer Nawaz

    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.

GitHub

https://github.com/sameersyd/BoxFeed
You might also like...

App for displaying VK news feed (VKSDK API). Clean Swift VIP architecture

App for displaying VK news feed (VKSDK API). Clean Swift VIP architecture

VKNewsFeed VKNewsFeed - application for displaying VK news feed with dynamic cells and a collection of images in the post. Data request occurs from th

Dec 18, 2021

In this mini app covered the concepts like basics of SwiftUI and Navigations and Animations and List with CRUD functions and MVVM and App Launch and App icons adding and also applied persistence using UserDefaults Concept.

In this mini app covered the concepts like basics of SwiftUI and Navigations and Animations and List with CRUD functions and MVVM and App Launch and App icons adding and also applied persistence using UserDefaults Concept.

TodoList In this application used the concepts from the beginner level project of SwiftUI_Evolve_1 The following concepts covered in this mini app Swi

Dec 4, 2021

An iOS template project using SwiftUI, Combine and MVVM-C software architecture

An iOS template project using SwiftUI, Combine and MVVM-C software architecture

SwiftUI-MVVM-C A template project that uses SwiftUI for UI, Combine for event handling, MVVM-C for software architecture. I have done some small proje

May 5, 2022

Anime schedule, korean subtitle for iOS with SwiftUI + Combine and MVVM architecture

AniTime Anime schedule, korean subtitle for iOS with SwiftUI + Combine and MVVM architecture I'm developing a new one for the SwiftUI life cycle annou

Mar 14, 2022

SwiftUI-TodoList - This project uses MVVM architecture and UserDefaults to persist data

SwiftUI-TodoList | β”œβ”€β”€ SwiftUITodoList | β”œβ”€β”€ Library | β”œβ”€β”€ Models

Mar 9, 2022

A mobile application that presents the news received via NewsAPI to the user. Built with SwiftUI.

A mobile application that presents the news received via NewsAPI to the user. Built with SwiftUI.

πŸ“° SwiftUI News App with NewsAPI A mobile application that presents the news received via NewsAPI to the user. Built with SwiftUI. βœ… Features The data

Nov 15, 2021

A simple SwiftUI Application to demonstrate creation of UI using SwiftUI.

A simple SwiftUI Application to demonstrate creation of UI using SwiftUI.

WatchShop_UI A simple SwiftUI Application to demonstrate creation of UI using SwiftUI. How to run the project ? Fork the project. Run the project usin

Apr 15, 2022

Watchos-navlink-swiftui-bug - Example Project to demonstrate bug in SwiftUI when NavigationLink is activated inside a TabView

Watchos-navlink-swiftui-bug - Example Project to demonstrate bug in SwiftUI when NavigationLink is activated inside a TabView

SwiftUI Bug using NavigationLink inside a TabView on watchOS 8.1+ When a Navigat

Jan 25, 2022

ToDo App Build With Swift And MVVM Architecture

ToDo App Build With Swift And MVVM Architecture

To Do App Project Description This project is the result of what i learned during IB Tech iOS Mobile Development Bootcamp. This project includes view

Oct 28, 2021
Comments
  • 1. Add support for dark mode

    Changed the defined colors to use dynamic system colors, which update automatically based on the theme. Updated the UI elements to use these colors appropriately.

    This closes #6

    Reviewed by pahnev at 2021-10-19 11:55
  • 2. Add core-data

    Add core-data with following functionalities,

    • [x] CD setup
    • [x] CD dependencies
    • [x] Func: Bookmark article
    • [x] Setup bookmarks screen
    • [x] Design bookmarks screen
    • [x] Fetch and display bookmarks from CD
    • [x] Func: Delete bookmark
    Reviewed by sameersyd at 2021-09-18 06:41
RippleQueries is an iOS application built as assessment task at Ripple Egypt. Built Using MVVM (Model-View-ViewModel) and Clean Architecture concepts
RippleQueries is an iOS application built as assessment task at Ripple Egypt. Built Using MVVM (Model-View-ViewModel) and Clean Architecture concepts

RippleRepositories RippleRepositories is an iOS application built as an assessment task at Ripple Egypt. Built Using RxSwift & MVVM (Model-View-ViewMo

Sep 16, 2021
Implemented MVVM-C (Coordinator) architecture pattern for the project. Which is satisfying SOLID principles altogether. Protocol oriented development has been followed.

BreakingBad BreakingBad API doc Implemented MVVM-C (Coordinator) architecture pattern for the project. Which is satisfying SOLID principples altogethe

Mar 10, 2022
SwiftUI sample app using Clean Architecture. Examples of working with CoreData persistence, networking, dependency injection, unit testing, and more.
SwiftUI sample app using Clean Architecture. Examples of working with CoreData persistence, networking, dependency injection, unit testing, and more.

Articles related to this project Clean Architecture for SwiftUI Programmatic navigation in SwiftUI project Separation of Concerns in Software Design C

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

SwiftUI NewsAPI App A Full News App based on the latest SwiftUI 3/iOS 15 that fetches latest news from newsapi.org. Features The app has several main

May 14, 2022
An iOS application written in Swift to demonstrate how to implement a Clean Architecture in iOS

Reminders iOS An iOS application written in Swift to demonstrate how to implement a Clean Architecture in iOS. Idea The idea is to implement the simpl

Apr 26, 2022
Lentit iOS app developed in Swift with SwiftUI using MVVM design pattern

Lentit Track things you lend with Lentit Features 100% Swift 100% SwiftUI MVVM d

May 20, 2022
NewsApp- - Built A News App With SwiftUI and Mock Data
NewsApp- - Built A News App With SwiftUI and Mock Data

News APP Built A News App With Swift UI and Mock Data Screen Gif

Feb 14, 2022
A demo app to showcase testable, modern iOS development with SwiftUI and Combine on MVVM-C architecture.

Coinz_App_iOS A demo app to showcase testable, modern iOS development with SwiftUI and Combine on MVVM-C architecture. Tech Stack: Swift, SwiftUI, Com

Dec 26, 2021
Best architecture for SwiftUI + CombineBest architecture for SwiftUI + Combine

Best architecture for SwiftUI + Combine The content of the presentation: First of the proposed architectures - MVP + C Second of the proposed architec

Dec 15, 2021
Giphy is an open source iOS app based on MVVM (Model–view–viewmodel) software architectural pattern.

Giphy(Search and display gifs) - MVVM Description Giphy is an open source iOS app based on MVVM (Model–view–viewmodel) software architectural pattern.

Apr 15, 2022