whats_new 0.0.4

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • new57

whats_new

Beautiful way to showcase new features of your app.

pub package

Getting Started

Add the dependency to your pubspec.yaml

dependencies:
 whats_new: ^0.0.4

And run flutter packages upgrade

How to use

Option 1

Use WhatsNew.show(BuildContext, WhatsNewContent).

// Only show partial configurations, please refer WhatsNewContent to view more configurations
WhatsNew.show(context, WhatsNewContent(
      backgroundColor: Colors.white,
      title: 'What\'s New',
      titleColor: Colors.black,
      primaryButtonText: 'Let\'s Go',
      primaryButtonTextColor: Colors.white,
      primaryButtonBackgroundColor: Colors.red,
      secondaryButtonText: 'Learn more',
      secondaryButtonTextColor: Colors.red,
      transitionDuration: Duration(milliseconds: 350),
      featureItemTransitionDuration: Duration(milliseconds: 350),
      hideSecondaryButton: false,
      dismissible: false,
      callback: this,
      features: [
        Feature(
            icon: 'assets/camera-iris.png',
            iconColor: Colors.red,
            title: 'Title four',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet',
            descriptionColor: Colors.grey
        ),
        Feature(
            icon: 'assets/cellphone.png',
            iconColor: Colors.red,
            title: 'Title five',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt',
            descriptionColor: Colors.grey
        )
      ],
    ));

or

Option 2

Created your own WhatsNewContent and launch with your own Navigator.

var content = WhatsNewContent(...)

Navigator.of(context).push(WhatsNew(content));

Example

Check out the example for more details.

Changelog

See changelog.

Contributions

Any contribution is more than welcome! You can contribute through pull requests and issues on GitHub.

[0.0.4] - 2018-10-25

  • Add support to customise fontSize and fontWeight

[0.0.3] - 2018-10-24

  • Initial release

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:whats_new/whats_new.dart';
import 'package:whats_new/whats_new_content.dart';

// Example application:
void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Playground',
      home: TestPage(),
    );
  }
}

class TestPage extends StatelessWidget implements WhatsNewCallback {
  void _showOverlay(BuildContext context) {
    WhatsNew.show(context, WhatsNewContent(
      backgroundColor: Colors.white,
      title: 'What\'s New',
      titleColor: Colors.black,
      primaryButtonText: 'Let\'s Go',
      primaryButtonTextColor: Colors.white,
      primaryButtonBackgroundColor: Colors.red,
      secondaryButtonText: 'Learn more',
      secondaryButtonTextColor: Colors.red,
      transitionDuration: Duration(milliseconds: 350),
      featureItemTransitionDuration: Duration(milliseconds: 350),
      hideSecondaryButton: false,
      dismissible: false,
      callback: this,
      features: [
        Feature(
          icon: 'assets/access-point.png',
          iconColor: Colors.red,
          title: 'Title one',
          titleColor: Colors.black,
          description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
          descriptionColor: Colors.grey
        ),
        Feature(
            icon: 'assets/account.png',
            iconColor: Colors.red,
            title: 'Title two',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.',
            descriptionColor: Colors.grey
        ),
        Feature(
            icon: 'assets/alert-circle.png',
            iconColor: Colors.red,
            title: 'Title three',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
            descriptionColor: Colors.grey
        ),
        Feature(
            icon: 'assets/camera-iris.png',
            iconColor: Colors.red,
            title: 'Title four',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet',
            descriptionColor: Colors.grey
        ),
        Feature(
            icon: 'assets/cellphone.png',
            iconColor: Colors.red,
            title: 'Title five',
            titleColor: Colors.black,
            description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt',
            descriptionColor: Colors.grey
        )
      ],
    ));
  }

  @override
  void onWhatsNewShowed() {
    print('onWhatsNewShowed');
  }

  @override
  void onWhatsNewDismissed() {
    print('onWhatsNewDismissed');
  }

  @override
  void onPrimaryButtonClicked() {
    print('onPrimaryButtonClicked');
  }

  @override
  void onSecondaryButtonClicked() {
    print('onSecondaryButtonClicked');
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('flutter_whats_new_example')),
      body: Padding(
        padding: EdgeInsets.all(16.0),
        child: Center(
          child: RaisedButton(
            onPressed: () => _showOverlay(context),
            child: Text('Show WhatsNew'),
          ),
        ),
      ),
    );
  }
}

Use this package as a library

1. Depend on it

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


dependencies:
  whats_new: ^0.0.4

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter packages get

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

3. Import it

Now in your Dart code, you can use:


import 'package:whats_new/whats_new.dart';
  
Version Uploaded Documentation Archive
0.0.4 Oct 25, 2018 Go to the documentation of whats_new 0.0.4 Download whats_new 0.0.4 archive
0.0.3 Oct 24, 2018 Go to the documentation of whats_new 0.0.3 Download whats_new 0.0.3 archive
0.0.2 Oct 24, 2018 Go to the documentation of whats_new 0.0.2 Download whats_new 0.0.2 archive
0.0.1 Oct 24, 2018 Go to the documentation of whats_new 0.0.1 Download whats_new 0.0.1 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
25
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
70
Overall:
Weighted score of the above. [more]
57
Learn more about scoring.

We analyzed this package on Nov 14, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0
  • pana: 0.12.6
  • Flutter: 0.11.3

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Maintenance suggestions

The description is too short. (-20 points)

Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

Package is pre-v0.1 release. (-10 points)

While there is nothing inherently wrong with versions of 0.0.*, it usually means that the author is still experimenting with the general direction of the API.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.68.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11
meta 1.1.6
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
flutter_test