A Flutter app showcasing daily news articles

Daily News App

Creator: A.F.M. MOHIMENUL JOAA

Feature Description:

  1. Fetch and Display: Fetch news articles from the NewsAPI Display them in a list with the article title, image, and a short description.
  2. Detail View: On tapping a list item, navigate to a new screen that displays the full content of the article, including the image, title, content, and published date.
  3. State Management: Implement a state management solution of your choice (RiverPod or Bloc) to manage and store the fetched articles.
  4. Error Handling: Implement error handling for network failures or any other possible exceptions.
  5. Pull to Refresh: Implement a pull-to-refresh feature that fetches the latest articles when the user pulls down on the list.
  6. Caching: Cache the fetched articles to provide an offline reading experience.
  7. Search Functionality: Allow users to search for specific articles by keyword.
  8. Theming and UI/UX: Showcase your design and theming skills by styling the app beyond basic widgets.

Supported Platform:

Android, iOS, Web

Features

  • Material design
  • Clean architecture using Business Logic Component
  • Local data caching using hive
  • Network image caching using Cached Network Image
  • Inherited Widget using provider
  • App Routing
  • Repository Pattern
  • Flare animation using Flare Flutter
  • Proper Error Handling
  • Proper Permission Handling
  • Pull to refresh
  • Domain driven design
  • Search using country, category and query
  • Caching search result using hive
  • Using custom fonts
  • Light and Dark theme implementation
  • Beautiful modern UI with animation and sidebar
  • Shimmer if image url is null or empty shimmer

Screenshot

Dashboard/Home

Detail Page

Sidebar

About page

No Internet Dashboard

Build Requirements

SDK Version
Dart 3.1.3
Flutter 3.13.6

Dependency

Dev Dependencies
cupertino_icons
flutter_svg
flutter_zoom_drawer
logging
freezed_annotation
json_annotation
bloc
flutter_bloc
provider
flare_flutter
dio
hive
intl
dartz
get_it
cached_network_image
flutter_cache_manager
path_provider
shimmer

License

GNU AFFERO GENERAL PUBLIC LICENSE

GitHub

View Github