News App developed with Flutter and API from News API
- Please open file constant_config.dart and change
YOUR API KEY
in the variablekeyNewsApi
with your own. - 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.
-
Flutter BLoC
BLoC (Business Logic Component) is design pattern helps to separate presentation from business logic. -
Dio
A powerful HTTP client for Dart, which supports interceptors, FormData, Request Cancellation, File Downloading, Timeout, etc. -
JSON Serializable
Automatically generate code for converting to and from JSON by annotating Dart classes. -
Intl
Plugin to provides internalization 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 on Android and iOS. -
Build Runner
Package to provides a concrete way of generating files using Dart code, outside of tools likepub server/build
, files are always generated directly on disk, and rebuilds are incremental- inspired by tools such as Bazel. -
Cached Network Image
Flutter library to load and cache network images. Can also be used with placeholder and error widgets. -
Equatable
An abstract class that helps to implement equality without needing to explicitly override == and hashCode. -
Dio
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
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.