wishfly 0.1.0 copy "wishfly: ^0.1.0" to clipboard
wishfly: ^0.1.0 copied to clipboard

outdated

Wishfly allows you to know what functions should your app have. All in your app.

Wishfly #

pub package Website

Put your users to driver's seat. Wishfly allows you to know what functions should your app have. #

[]

Features #

  • User can create wish with title and description.
  • In Admin you can change status of each wish (all new wishes must be approved before showing in list for users).

Getting started #

🤘 It takes less than 180 seconds to integrate Wishfly into your app.

  1. Go to the Wishfly Admin and create account.
    Click on plus button to create a new project and enter your app's name.

  2. Add dependency to your pubspec.yaml file

$ flutter pub add wishfly: ^0.1.0

or

dependencies:
  flutter:
    sdk: flutter
  ...
  wishfly: ^0.1.0

Don't forget to flutter pub get.

  1. Import package in your dart file
import 'package:wishfly/wishfly.dart';
  1. You can place Widget in you widget tree. It could be a screen, modal or whatever you want. You can see example below.
import 'package:wishfly/wishfly.dart';

class MyApp extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return Wishfly(
      apiKey: "your-api-key-here", // your API key
      projectId: 0, // your project ID
    );
  }
}

Additional information #

Localization #

Default language is English.

For supporting other languages, you can add corresponding keys to your own localization file and pass it to Wishfly widget. You can see localization keys here.

To get localization, add WishflyLocalizationDelegate to your MaterialApp widget.

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Wishfly Demo',
      supportedLocales: const [Locale('en')],
      localizationsDelegates: const [
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
        WishflyLocalizationsDelegate(), // Add this line
      ],
      home: ...,
    );
  }
}

If you do not add keys to your localization file, you can pass a map with keys to Wishfly widget in order to override default values.

child: Wishfly(
    apiKey: ...
    projectId: ...,
    localizationOverrides: const {
        "noWishes": "No wishes here, but you can be the first one!",
        //... and more
    },
),

Theme #

You can customize colors in UI. Here you can see what you can customize:

class WishflyThemeData {
  final Brightness brightness;
  final Color? voteIconColor;
  final Color? addWishButtonColor;
  final Color? titleTextColor;
  final Color? tileBackgroundColor;
  final Color? descriptionTextColor;
  final Color? shadowColor;
  final Color? voteCountTextColor;
  final Color? primaryBackgroundColor;
  final Color? itemTileColor;
  final Color? progressBarBackgroundColor;

  //...
}

In order to support dark or light mode, use WishflyThemeData.light() or WishflyThemeData.dark() factory method.

Example usage could be:

child: Wishfly(
    apiKey: "your-api-key-here", // Paste your API key here
    projectId: 0, // Paste your project ID here        
    theme: WishflyThemeData.light(
        voteIconColor: Colors.black,
        addWishButtonColor: Colors.black,
        // more..
    ),      
),

Note: ⚠️ Wishfly is currently in beta and under development. The SDK API might change in future. #

3
likes
0
points
22
downloads

Publisher

verified publisherwishfly.dev

Weekly Downloads

Wishfly allows you to know what functions should your app have. All in your app.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, http, provider, shared_preferences, wishfly_shared

More

Packages that depend on wishfly