Flutter News App
Flutter News App with newsapi.org. Developed using the Test Driven Development.
News App developed with Flutter and API from [News API](https://newsapi.org) The project is written primarily in Dart, distributed under the MIT License license, first published in 2019. Key topics include: flutter, flutter-apps, flutter-bloc, flutter-bloc-test, flutter-clean-architecture.

Flutter News App
News App developed with Flutter and API from News API
Versions
Usage
- Please open file constant_config.dart and change
YOUR API KEYin the variablekeyNewsApiwith your own. - In development mode, I'm used fake json server. So, the data is not realtime.
- Build flavor only work for Android. So, if you want to run as development mode you can use this command.
flutter run -t lib/main_development.dart --flavor development -d <device_id>
or in production mode.
flutter run --release -t lib/main_production.dart --flavor production -d <device_id>
Note: If you want to build and release this app to Play Store. Please use this command.
flutter build appbundle --release --flavor production -t lib/main_production.dart
- For iOS, you can use this command as development mode.
flutter run -t lib/main_development.dart -d <device_id>
or in production mode.
flutter run --release -t lib/main_production.dart -d <device_id>
For iOS, to build and release there is no configuration. Just follow the instructions from the documentation.
Feature
- List daily news.
- Filter daily news by category.
- Refresh list daily news with pull to refresh style.
- Go to detail news website.
- Search news.
- Dark mode support.
Technology
- Dio<br />
A powerful Http client for Dart, which supports interceptors, FormData, Request Cancellation, File Downloading, Timeout, etc. - Flutter BLoC<br />
Flutter widgets that make it easy to implement the BLoC design pattern. - Intl<br />
Package providers internationalization and localization facilities, including message translation, plurals and genders, date/number formatting and parsing, and bidirectional text. - Url Launcher<br />
Flutter plugin for launching a URL in the mobile platform. Supports iOS and Android. - Cached Network Image<br />
Flutter library to load and cache network images. Can also be used with placeholder and error widgets. - Get It<br />
Simple direct Service Locator that allows to decouple the interface from a concrete implementation and to access the concrete implementation from everywhere in your App. - Dartz<br />
Functional Programming in Dart. Purify your Dart code using efficient immutable data structures, monads, lenses and other FP tools. - Equatable<br />
An abstract class that helps to implement equality without needing to explicitly override == and hashCode. - Data Connection Checker<br />
A pure Dart library that checks for internet by opening a socket to a list of specified addresses, each with individual port and timeout. - Flutter ScreenUtil<br />
A Flutter plugin for adapting screen and font size. - Pedantic<br />
How to get the most value from Dart static analysis. - Device Info<br />
Flutter plugin providing detailed information about the device (make, model, etc). - Flutter SVG<br />
An SVG rendering and widget library for Flutter, which allows painting and displaying Scalable Vector Graphics 1.1 files. - Build Runner<br />
Tools to write binaries that run builders. - Mockito<br />
A mock framework inspired by Mockito. - Bloc Test<br />
A testing library which makes it easy to test blocs. - JSON Serializable<br />
Automatically generate code for converting to and from JSON by annotating Dart classes. - Hive<br />
Lightweight and blazing fast key-value database written in pure Dart.
Contributors
Showing top 1 contributor by commit count.
This article is auto-generated from CoderJava/Flutter-News-App via the GitHub API.Last fetched: 6/28/2026
