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 KEY
in the variable keyNewsApi
with 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
Technology
- Dio
A powerful Http client for Dart, which supports interceptors, FormData, Request Cancellation, File Downloading, Timeout, etc.
- Flutter BLoC
Flutter widgets that make it easy to implement the BLoC design pattern.
- Intl
Package providers internationalization and localization facilities, including message translation, plurals and genders, date/number formatting and parsing, and bidirectional text.
- Url Launcher
Flutter plugin for launching a URL in the mobile platform. Supports iOS and Android.
- Cached Network Image
Flutter library to load and cache network images. Can also be used with placeholder and error widgets.
- Get It
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
Functional Programming in Dart. Purify your Dart code using efficient immutable data structures, monads, lenses and other FP tools.
- Equatable
An abstract class that helps to implement equality without needing to explicitly override == and hashCode.
- Data Connection Checker
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
A Flutter plugin for adapting screen and font size.
- Pedantic
How to get the most value from Dart static analysis.
- Device Info
Flutter plugin providing detailed information about the device (make, model, etc).
- Flutter SVG
An SVG rendering and widget library for Flutter, which allows painting and displaying Scalable Vector Graphics 1.1 files.
- Build Runner
Tools to write binaries that run builders.
- Mockito
A mock framework inspired by Mockito.
- Bloc Test
A testing library which makes it easy to test blocs.
- JSON Serializable
Automatically generate code for converting to and from JSON by annotating Dart classes.
- Hive
Lightweight and blazing fast key-value database written in pure Dart.