flutter_feedback_dialog 0.0.6 copy "flutter_feedback_dialog: ^0.0.6" to clipboard
flutter_feedback_dialog: ^0.0.6 copied to clipboard

A customizable and easy-to-use Flutter package for collecting user feedback through dialog popups.

FlutterFeedbackDialog #

A customizable and easy-to-use Flutter package for collecting user feedback through beautiful dialog popups. Supports text input, image attachments, and integrates seamlessly with the free FeedbackNest AI-powered backend that automatically organizes feedback with smart tags, sentiment analysis, and priority detection.

pub version License: MIT

πŸ“‹ Table of Contents #

✨ Features #

  • 🎯 Multiple Feedback Types: Feedback, bug reports, feature requests, and contact forms
  • 🎨 Dual Themes: Beautiful light and dark theme support
  • πŸ“Έ Image Attachments: Users can attach screenshots or images
  • πŸ”§ Fully Customizable: Titles, subtitles, buttons, icons, colors, and more
  • ⚑ Simple Integration: Show dialogs with a single function call
  • βœ… Built-in Validation: Form validation for required fields
  • πŸ”„ Success Messages: Custom success notifications
  • πŸ€– AI-Powered Backend: Free FeedbackNest integration with automatic categorization, sentiment analysis, and smart prioritization
  • πŸ“Š Project Management: Track feedback progress from Open β†’ In Progress β†’ Done

πŸ“Έ Screenshots #

Light Theme Dialogs #

Feedback Bug Report Feature Request Contact
[Feedback Light 1]
[Feedback Light 2]
[Bug Light 1]
[Bug Light 2]
[Feature Light 1]
[Feature Light 2]
[Contact Light 1]
[Contact Light 2]

Dark Theme Dialogs #

Feedback Bug Report Feature Request Contact
[Feedback Dark] [Bug Dark] [Feature Dark] [Contact Dark]

πŸš€ Quick Start #

1. Add Dependencies #

dependencies:
  flutter_feedback_dialog: any
  feedbacknest_core: any  # Optional: for free backend integration

2. Import Package #

import 'package:flutter_feedback_dialog/flutter_feedback_dialog.dart';

3. Show Dialog #

FlutterFeedbackDialog.show(
  context,
  type: CommunicationViewType.feedback,
  theme: CommunicationTheme.light,
  onSubmit: (response) {
    print('Feedback: ${response.message}');
  },
);

πŸ“– Step-by-Step Setup #

Step 1: Installation #

Run this command in your Flutter project:

flutter pub add flutter_feedback_dialog

Step 2: Import the Package #

Add the import statement to your Dart file:

import 'package:flutter_feedback_dialog/flutter_feedback_dialog.dart';

Step 3: Basic Implementation #

Add a button to trigger the feedback dialog:

ElevatedButton(
  onPressed: () {
    FlutterFeedbackDialog.show(
      context,
      type: CommunicationViewType.feedback,
      theme: CommunicationTheme.light,
      onSubmit: (CommunicationResponse response) {
        // Handle the response
        print('Message: ${response.message}');
        print('Email: ${response.email}');
        print('Screenshots: ${response.screenshots?.length ?? 0}');
      },
    );
  },
  child: Text('Give Feedback'),
)

Step 4: Handle Different Feedback Types #

// Feedback Dialog
FlutterFeedbackDialog.show(context, type: CommunicationViewType.feedback);

// Bug Report Dialog
FlutterFeedbackDialog.show(context, type: CommunicationViewType.bug);

// Feature Request Dialog
FlutterFeedbackDialog.show(context, type: CommunicationViewType.featureRequest);

// Contact Dialog
FlutterFeedbackDialog.show(context, type: CommunicationViewType.contact);

πŸ’» Usage Examples #

Basic Usage #

FlutterFeedbackDialog.show(
  context,
  type: CommunicationViewType.feedback,
  theme: CommunicationTheme.light,
  onSubmit: (CommunicationResponse response) {
    // Process the feedback
    print('User feedback: ${response.message}');
    print('User email: ${response.email}');
    
    // Handle image attachments
    if (response.screenshots != null && response.screenshots!.isNotEmpty) {
      print('User attached ${response.screenshots!.length} images');
    }
  },
);

Advanced Customization #

FlutterFeedbackDialog.show(
  context,
  type: CommunicationViewType.bug,
  theme: CommunicationTheme.dark,
  title: "πŸ› Report a Bug",
  subtitle: "Help us squash bugs and improve the app!",
  buttonText: "Submit Bug Report",
  placeholder: "Please describe the bug you encountered...",
  icon: Icons.bug_report,
  successMessage: "Thanks! We'll investigate this bug soon.",
  onSubmit: (CommunicationResponse response) {
    // Handle bug report
    _processBugReport(response);
  },
);

☁️ FeedbackNest Integration #

FeedbackNest is completely FREE and provides an intelligent backend solution for collecting and managing feedback without any setup complexity. It uses AI to automatically analyze and organize all user communications.

πŸ€– AI-Powered Features #

FeedbackNest automatically uses AI to enhance your feedback management:

  • 🎯 Auto-Generated Titles - AI creates meaningful titles from user messages
  • 🏷️ Smart Tags - Automatically categorizes feedback with relevant tags
  • 😊 Sentiment Analysis - Detects user emotions (positive, negative, neutral)
  • πŸ“Š Priority Detection - AI assigns priority levels based on content urgency
  • πŸ” Smart Search - Find feedback quickly with AI-enhanced search
  • πŸ“ˆ Trend Analysis - Identify patterns and common issues automatically
  • πŸ‘₯ User Analytics - Track total users, active sessions, new user growth
  • πŸ—ΊοΈ Geographic Insights - Monitor user distribution across countries
  • πŸ“± Version Tracking - Analyze user behavior across different app versions
  • ⭐ Rating Analytics - Monitor user satisfaction and app ratings

Why Use FeedbackNest? #

  • βœ… 100% Free - No cost, no limits, no credit card required
  • βœ… AI-Powered - Automatic categorization, sentiment analysis, and prioritization
  • βœ… Zero Backend Setup - No server configuration needed
  • βœ… Smart Dashboard - AI-organized feedback with actionable insights
  • βœ… User Analytics - Comprehensive user tracking, session data, and geographic insights
  • βœ… Project Management - Move feedback through stages: Open β†’ In Progress β†’ Done
  • βœ… Team Collaboration - Share feedback and track progress with your team
  • βœ… Easy Integration - Just add your API key and start collecting feedback

Step-by-Step FeedbackNest Setup #

Step 1: Sign Up (Free)

  1. Visit FeedbackNest.app
  2. Create your free account
  3. No credit card required!

Step 2: Create a Project

  1. Click "Create New Project" in your dashboard
  2. Enter your app/project name
  3. Get your unique API key

FeedbackNest Dashboard Screenshots #

πŸ“Š User Insights & Analytics Dashboard

[FeedbackNest Dashboard]

Comprehensive User Analytics:

  • πŸ‘₯ Total Users: Track your total user base
  • πŸ“ˆ Sessions Today: Monitor daily active sessions
  • πŸ†• New Users: See daily user growth
  • πŸ“Š Active Users: Track 7-day active users
  • ⭐ User Ratings: Monitor app satisfaction
  • πŸ“ˆ Historical Trends: View user growth patterns over time with interactive charts
  • πŸ—ΊοΈ Geographic Insights: See user distribution by country
  • πŸ“± Version Analytics: Track users across different app versions
  • πŸ’€ Inactive Users: Monitor user retention and engagement
  • πŸ“Š Session Patterns: Analyze user behavior with detailed session data

🏷️ Individual Feedback with AI Analysis

[FeedbackNest Feedback Detail]

AI-Enhanced Feedback Details:

  • 🎯 Auto-Generated Titles: AI creates meaningful titles like "UI appearance issue", "Random login logouts"
  • 🏷️ Smart Categorization: Automatic tags based on content analysis
  • 😊 Sentiment Detection: Real-time sentiment analysis of user emotions
  • πŸ“Š Priority Assignment: AI determines urgency and importance
  • πŸ‘₯ User Context: Complete user information and communication history
  • πŸ”„ Workflow Management: Track progress from submission to resolution

Step 3: Add FeedbackNest to Your App

Add the dependency:

dependencies:
  flutter_feedback_dialog: any
  feedbacknest_core: any

Step 4: Initialize FeedbackNest

import 'package:feedbacknest_core/feedbacknest.dart';

void main() {
  runApp(MyApp());
  
  // Initialize FeedbackNest with your free API key
  Feedbacknest.init(
    "your-api-key-from-dashboard",
    userIdentifier: "user@example.com", // Optional: identify users
  );
}

Step 5: Send Feedback to FeedbackNest

FlutterFeedbackDialog.show(
    context,
    type: _selectedType,
    theme: _selectedTheme,
    onSubmit: (CommunicationResponse response) {
      Feedbacknest.submitCommunication(
        message: response.message,
        type: _selectedType.name,
        email: response.email,
        files: response.screenshots,
      );
    },
  );

Step 6: Manage Feedback with AI Dashboard

  1. View AI-Organized Feedback: Log into your FeedbackNest dashboard to see all feedback automatically categorized with AI-generated tags and sentiment analysis
  2. Track Progress: Move feedback through workflow stages:
    • Open πŸ“‹ - New feedback items
    • In Progress πŸ”„ - Items you're actively working on
    • Resolved βœ… - Completed feedback items
  3. Leverage AI Insights: Use automatic priority detection and sentiment analysis to prioritize important issues
  4. Team Collaboration: Share feedback with your team and track who's working on what
  5. Analytics & Trends: Monitor feedback patterns, user satisfaction, and resolution times

🎨 Customization #

Available Customization Options #

Parameter Type Description
type CommunicationViewType Dialog type: feedback, bug, featureRequest, contact
theme CommunicationTheme Theme: light or dark
title String? Custom dialog title
subtitle String? Custom dialog subtitle
buttonText String? Custom submit button text
icon IconData? Custom dialog icon
placeholder String? Custom textarea placeholder
successMessage String? Custom success message

Customization Examples #

// Feature Request with Custom Styling
FlutterFeedbackDialog.show(
  context,
  type: CommunicationViewType.featureRequest,
  theme: CommunicationTheme.light,
  title: "πŸ’‘ Got an Idea?",
  subtitle: "Share your feature ideas to help us improve!",
  buttonText: "Submit Idea",
  icon: Icons.lightbulb_outline,
  placeholder: "Describe your feature idea in detail...",
  successMessage: "πŸŽ‰ Thanks! We love hearing new ideas from our users.",
  onSubmit: (response) => _handleFeatureRequest(response),
);

// Contact Form with Professional Look
FlutterFeedbackDialog.show(
  context,
  type: CommunicationViewType.contact,
  theme: CommunicationTheme.dark,
  title: "πŸ“ž Get in Touch",
  subtitle: "We'd love to hear from you!",
  buttonText: "Send Message",
  icon: Icons.contact_support,
  placeholder: "How can we help you today?",
  successMessage: "βœ… Message sent! We'll get back to you soon.",
  onSubmit: (response) => _handleContactForm(response),
);

πŸ“± Example App #

Explore the complete example app in the example/ directory:

What's Included: #

  • βœ… All dialog types (feedback, bug, feature, contact)
  • βœ… Theme switching (light/dark)
  • βœ… FeedbackNest integration
  • βœ… Custom styling examples
  • βœ… Error handling
  • βœ… Success notifications

Running the Example: #

cd example
flutter pub get
flutter run

Example App Features: #

  • Interactive Demo: Try all dialog types and themes
  • FeedbackNest Integration: See real backend integration
  • Custom Styling: Examples of dialog customization
  • Best Practices: Proper error handling and user feedback

🀝 Contributing #

We welcome contributions! Here's how you can help:

Ways to Contribute: #

  • πŸ› Report bugs - Found an issue? Let us know!
  • πŸ’‘ Suggest features - Have ideas for improvements?
  • πŸ“– Improve docs - Help make our documentation better
  • πŸ”§ Submit PRs - Fix bugs or add new features
  • ⭐ Star the repo - Show your support!

Development Setup: #

git clone <repository-url>
cd flutter_feedback_dialog
flutter pub get
cd example
flutter pub get
flutter run

πŸ“„ License #

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Support #

  • Documentation: Check our API documentation
  • Issues: Report bugs on GitHub Issues
  • Discussions: Join our GitHub Discussions
  • FeedbackNest Support: Visit FeedbackNest Help

Build better feedback experiences with FlutterFeedbackDialog! πŸš€

Made with ❀️ by the FeedbackNest team

6
likes
0
points
115
downloads

Publisher

verified publisherfeedbacknest.app

Weekly Downloads

A customizable and easy-to-use Flutter package for collecting user feedback through dialog popups.

Homepage
Repository (GitHub)
View/report issues

Topics

#rating #review #feedback #analytics #logging

License

unknown (license)

Dependencies

flutter, image_picker

More

Packages that depend on flutter_feedback_dialog