fappconfiguration 1.0.0

  • Readme
  • Changelog
  • Example
  • Installing
  • 54

fappconfiguration #

Pub.dev License

A library for Flutter developers.

Description #

fappconfiguration's a package that help you configure your application for dynamic content, example white label, flavors, server side rendering and routing.

Application configuration allow you to provide dynamic routing, dynamic theming, dynamic localization, dynamic widget and more.

1- You can specify theme for light and dark mode #

Light and dark theme

2- You can specify different languages supported by the app, see Application configuration.

3- You can change specific widget dynamically on the fly, see Application configuration and also Dynamic Widget Provider.

Look at the button on the right end of the screen, even if the screen code and behavior did not change but the widget did. #

Dynamic Widget Switching

4- You can override or provide new routes for every Application configuration

For example we want to provide different about page for both yellow white label and green white label but without change the home page code.

Route Override

5- You can also specify DI dependencies for an Application configuration.

This is possible by leveraging the Provider package and providing your dependency using the dependencies field of your application configuration. #

6- You can easily update the application configuration on the fly using FAppConfigurationApplication update method.

There's more that you can do, please see the example project.

The library currently provide two out of the box App widget that support application configuration: #

For Material design DefaultMaterialApplication.

For Cupertino design DefaultCupertinoApplication.

If you want to create your own, just extend the FAppConfigurationApplication.

For any feature request or bug please create a github issue

[0.0.1] - 25/08/2019.

  • First release: Added application configuration.

[0.0.2] - 26/08/2019.

  • Changed localizationsDelegate field name to localizationsDelegates.

  • Changed type of property from single delegate to list of localization delegates. This allow an application configuration to provide multiple localization delegates

[1.0.0] - 27/11/2019.

  • Added support for dependencies inside of ApplicationConfiguration. This allow you to specify the dependency that an application configuration is depending on, those dependency will be provided using provider library.

  • Added possibility to update current application configuration on the fly, using FAppConfigurationApplication.update method.

  • Added FAppConfigurationApplication class and FAppConfigurationApplicationState class to allow custom implementation of application widget without loosing update the functionality.

example/README.md

example #

A new Flutter project.

Getting Started #

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  fappconfiguration: ^1.0.0

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:fappconfiguration/fappconfiguration.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
11
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
90
Overall:
Weighted score of the above. [more]
54
Learn more about scoring.

We analyzed this package on Dec 7, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.6.1
  • pana: 0.12.21
  • Flutter: 1.9.1+hotfix.6

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Maintenance issues and suggestions

Support latest dependencies. (-10 points)

The version constraint in pubspec.yaml does not support the latest published versions for 1 dependency (provider).

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.2.2 <3.0.0
flutter 0.0.0
flutter_localizations 0.0.0
meta ^1.1.6 1.1.7 1.1.8
provider ^3.2.0 3.2.0 4.0.0-dev
Transitive dependencies
collection 1.14.11 1.14.12
intl 0.15.8 0.16.0
path 1.6.4
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
flutter_code_style ^1.6.7
flutter_test