flutter_awesome_logger 4.0.0 copy "flutter_awesome_logger: ^4.0.0" to clipboard
flutter_awesome_logger: ^4.0.0 copied to clipboard

Lightweight debugging with floating logger, automatic API logging (using interceptor), Flutter general logging, class-based filtering, scoped logger mixin, smart copy options, and a beautiful UI for v [...]

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

4.0.0 - 2025-12-12 #

๐ŸŽ‰ Major Release - Enhanced Statistics & Filtering #

This release introduces comprehensive statistics enhancements and improved filtering capabilities, making log analysis more powerful and intuitive.

Added #

  • ๐Ÿ“Š Warnings Statistics - New warnings count added to statistics bar, positioned before errors for better visual hierarchy
  • ๐ŸŽฏ Warnings Filtering - Clicking on warnings statistic now properly filters to show only warning logs
  • ๐Ÿ”ง Enhanced Filter Messages - Search hints and empty state messages now account for warnings filter selection
  • ๐ŸŽจ Unified Filter Section - LoggerStatistics and filter buttons now toggle visibility together with the main filter section

Fixed #

  • ๐Ÿ› Sort Toggle SnackBar Inconsistency - Fixed SnackBar showing opposite sorting direction after toggle action
  • โšก Warnings Filter Logic - Added missing 'warnings' case to stats filtering logic in FilterManager
  • ๐Ÿ“ Filter Display Utils - Updated search hints and empty state messages to handle warnings filter

Enhanced #

  • ๐ŸŽฏ Better UI Consistency - Statistics bar and filter controls now collapse/expand together for cleaner interface
  • ๐Ÿ“ฑ Improved User Experience - More accurate feedback messages when warnings filter is active
  • ๐Ÿ”„ Consistent Filter Behavior - Warnings filtering now works identically to success and errors filtering

Technical #

  • ๐Ÿ—๏ธ FilterManager Updates - Added warnings filtering case to applyFilters method
  • ๐ŸŽจ Display Utils Enhancement - Extended FilterDisplayUtils to handle warnings in all message types
  • ๐Ÿ“Š Statistics Ordering - Reorganized statistics display order: Total โ†’ Success โ†’ Warnings โ†’ Errors

3.0.3 - 2025-12-10 #

โœจ New Features - Enhanced Copy Functionality #

This release introduces powerful new copy options for both individual log entries and bulk filtered exports, making it easier to debug API calls and share log information.

Added #

  • ๐Ÿ“‹ Copy cURL & Response - New menu option for individual API logs that copies both cURL command and formatted response body
  • ๐Ÿ“„ Copy Response - New menu option for individual API logs that copies only the response body
  • ๐Ÿ“ฆ Minimal Bulk Export - Filtered log exports now use a cleaner format for API logs (cURL + response only, no headers)
  • ๐ŸŽฏ Smart Copy Menu - API logs now have 5 copy options: Message, Full Log, cURL & Response, Response, and cURL

Enhanced #

  • ๐Ÿ”ง Bulk Export Format - API logs in filtered exports now show essential information only (status, cURL, response)
  • ๐ŸŽจ Copy Menu Organization - Better ordering with "Copy cURL & Response" as the first API-specific option
  • ๐Ÿ“ฑ Individual Log Copy - Each API log entry now has comprehensive copy options in the popup menu

Technical #

  • ๐Ÿ—๏ธ New formattedContentMinimal Property - Added to UnifiedLogEntry for cleaner bulk exports
  • ๐Ÿ”„ Updated Copy Handler - Enhanced CopyHandler with new copy actions and menu items
  • ๐Ÿ“Š Improved Export Logic - LogDataService.exportLogsToString() now uses minimal format for cleaner exports

User Experience #

  • ๐Ÿš€ Faster Debugging - Copy cURL commands and responses with a single tap
  • ๐Ÿ“‹ Clean Exports - Bulk filtered logs now focus on essential API information
  • ๐ŸŽฏ Context-Aware Copy - Different copy options for different use cases (full logs vs API debugging)

3.0.2 - 2025-12-09 #

๐ŸŽจ UI/UX Improvements #

  • ๐ŸŽฏ Enhanced Class Filter UI - Major improvements to the class filter bottom sheet
  • ๐Ÿ—‘๏ธ Universal Clear Button - Added prominent "Clear All Filters" button at the top that clears all selected filters from all modes
  • ๐Ÿท๏ธ Always-Visible Selected Items - Selected filter chips are now always visible at the top, regardless of current filter mode
  • ๐Ÿ“Š Filter Mode Badges - Filter mode chips (All/Source/Path) now show badges indicating how many items are selected for each mode
  • ๐ŸŽจ Better Visual Hierarchy - Improved layout with clear button and selected items prominently displayed
  • โšก Mode-Agnostic Clearing - Clear button works across all filter modes, not just the currently active one

๐Ÿ”ง Technical Enhancements #

  • ๐Ÿ—๏ธ Unified Filter Management - Single clear function that handles all filter types simultaneously
  • ๐Ÿ“ฑ Responsive UI Components - Better organization of filter controls and selected items display
  • ๐ŸŽฏ Smart State Management - Improved handling of filter state across different modes

๐Ÿ“ฑ User Experience #

  • ๐Ÿš€ Faster Filter Management - Quick access to clear all filters from any filter mode
  • ๐Ÿ‘๏ธ Better Visibility - Selected items always visible, no need to switch modes to see what's selected
  • ๐Ÿ“Š Visual Feedback - Clear indication of which filter modes have active selections
  • ๐ŸŽจ Cleaner Interface - More intuitive layout with logical grouping of controls

3.0.1 - 2025-12-09 #

๐Ÿ› Bug Fixes #

  • ๐Ÿ”ง Import Conflict Resolution - Fixed naming conflicts between global logger and mixin's logger getter
  • ๐Ÿ“ฆ Cleaner Exports - Removed global logger from package exports to prevent shadowing issues
  • ๐ŸŽฏ Better Mixin Experience - AwesomeLoggerMixin now works seamlessly without requiring this.logger

๐Ÿ“š Documentation #

  • ๐Ÿ“– Improved Examples - Updated demo files and documentation for cleaner mixin usage
  • ๐Ÿ’ก Better Migration Guide - Clearer instructions for avoiding import conflicts

3.0.0 - 2025-12-09 #

๐ŸŽ‰ Major Release - Scoped Logger & Mixin Support #

This release introduces powerful new ways to add automatic source tracking to your logs, making it easier to filter and identify logs by class/component.

Added #

  • ๐Ÿท๏ธ AwesomeLoggerMixin - New mixin for automatic class-based source tracking using runtimeType
    • Simply add with AwesomeLoggerMixin to any class
    • Use logger.d(), logger.i(), logger.w(), logger.e() - source is automatically set to class name
    • Perfect for Cubits, Blocs, Services, Repositories, and any class
    • No need for this.logger - just use logger directly!
  • ๐ŸŽฏ ScopedLogger - New scoped logger class with pre-configured source identifier
    • All logs automatically include the source name
    • Same API as regular logger (d, i, w, e methods)
  • ๐Ÿ”ง logger.scoped() Method - Create scoped logger instances with custom source names
    • final _logger = logger.scoped('MyClassName') for manual source control
    • late final _logger = logger.scoped(runtimeType.toString()) for automatic class name

Changed #

  • โš ๏ธ Breaking Change: Removed global logger from package exports
    • Users should create their own logger instance via FlutterAwesomeLogger.loggingUsingLogger
    • This prevents naming conflicts with the mixin's logger getter
    • Migration: Create a my_logger.dart file with final logger = FlutterAwesomeLogger.loggingUsingLogger;

Usage Examples #

Using AwesomeLoggerMixin (Recommended):

class CubitAppConfig extends Cubit<StateAppConfig> with AwesomeLoggerMixin {
  CubitAppConfig() : super(const StateAppConfig()) {
    logger.d('Instance created'); // source: 'CubitAppConfig'
  }
  
  void loadConfig() {
    logger.i('Loading config...'); // source: 'CubitAppConfig'
  }
}

Using Scoped Logger:

class MyService {
  final _logger = logger.scoped('MyService');
  // Or: late final _logger = logger.scoped(runtimeType.toString());
  
  void doWork() {
    _logger.d('Working...'); // source: 'MyService'
  }
}

Technical #

  • ๐Ÿ—๏ธ Zero Boilerplate - Mixin approach requires no additional code, just add with AwesomeLoggerMixin
  • ๐ŸŽฏ Production Ready - Uses runtimeType which works correctly with inheritance
  • ๐Ÿ“ฆ Backward Compatible - Existing source parameter still works for one-off overrides
  • ๐Ÿ”„ Shadows Global Logger - Mixin's logger getter shadows imported global logger within the class

Exports #

  • Added AwesomeLoggerMixin to public exports
  • Added ScopedLogger to public exports

2.1.2 - 2025-12-06 #

Added #

  • ๐ŸŽฏ Class-Based Filtering - New "Classes" button in logger history page for filtering logs by class names
  • ๐Ÿ“ฑ Class Filter Bottom Sheet - Dedicated bottom sheet for class selection with multi-select functionality
  • ๐Ÿ”„ Dual View Modes - Toggle between list view and compact chip view for class selection
  • ๐Ÿ“Š Class Statistics - Shows log count per class with visual indicators
  • ๐ŸŽจ Smart Button Styling - Classes button appears grey when no classes are available, purple when active
  • ๐Ÿ” Class Search - Search and filter through available classes in the bottom sheet
  • ๐Ÿ“‹ Selected Classes Display - Horizontal chip list showing currently selected classes
  • ๐Ÿ’ก Educational Content - Informative message explaining class filtering when no classes exist
  • ๐Ÿท๏ธ Source Parameter for Logging - All log methods (d, i, w, e) now accept an optional source parameter for explicit source identification in release builds

Enhanced #

  • ๐ŸŽ›๏ธ Advanced Filtering - Expanded filtering capabilities beyond log levels and API methods
  • ๐Ÿ“ฑ Better UX - Improved filter section with more granular control options
  • ๐ŸŽฏ Source-Aware Filtering - Class filtering only applies to general logs, respects main source filters
  • ๐Ÿ“– Release Build Support - Added documentation for handling file path extraction limitations in production builds

Technical #

  • ๐Ÿ—๏ธ FilterManager Enhancement - Added selectedClasses state management and class filtering logic
  • ๐Ÿ“Š LogDataService Updates - New methods for extracting and counting classes from logs
  • ๐ŸŽจ UI Components - New ClassFilterBottomSheet and ClassChipTile widgets with responsive design
  • ๐Ÿ“ฑ Material Design 3 - Full theming support for the new filter components

Documentation #

  • โš ๏ธ Release Build Limitations - Added comprehensive documentation explaining why file paths show as "unknown" in production
  • ๐Ÿ’ก Best Practices - Added examples for using the source parameter effectively in production apps

2.1.1 - 2025-10-31 #

Fixed #

  • ๐Ÿ”ง Source File Path Display - Fixed incorrect source file path in logger history page showing logging_using_logger.dart instead of actual calling file (e.g., api_demo_page.dart)
  • ๐Ÿ“ Stack Trace Filtering - Improved stack trace filtering to properly exclude internal logger files and show correct source locations

2.1.0 - 2025-10-31 #

Added #

  • ๐ŸŽ›๏ธ Settings Modal - Added comprehensive settings modal accessible via app bar settings icon
  • ๐Ÿ”„ Circular Buffer Configuration - New enableCircularBuffer parameter in AwesomeLoggerConfig for controlling log replacement behavior
  • โš™๏ธ Runtime Configuration - All logger settings can now be modified at runtime through the settings modal
  • ๐Ÿ“Š Dynamic Max Log Entries - Real-time adjustment of maximum log entries limit
  • ๐ŸŽจ Console Output Toggles - Runtime toggles for file paths, emojis, and colors in console output
  • ๐Ÿ“ˆ Current Stats Display - Shows current number of stored logs in settings modal

Changed #

  • ๐Ÿš€ Improved UX - Moved configuration from inline UI to dedicated settings modal for cleaner interface
  • ๐Ÿ“ฑ Better Mobile Experience - Settings modal handles keyboard and screen sizes gracefully
  • ๐ŸŽฏ Enhanced Developer Experience - Immediate feedback on configuration changes

Technical #

  • ๐Ÿ—๏ธ Modal Architecture - Implemented StatefulBuilder for proper state management in bottom sheet
  • ๐Ÿ“ฑ Keyboard Handling - Proper keyboard dismissal and viewport adjustments
  • ๐ŸŽจ Theme Integration - Full Material 3 theming support in settings modal

2.0.0 - 2025-10-31 #

  • removed bloc dependency

1.2.3 - 2024-10-27 #

  • fixes to support older flutter versions

1.2.2 - 2024-10-27 #

Removed #

  • ๐Ÿ—‘๏ธ Shake Package Dependency - Removed shake package (^3.0.0) from dependencies
  • ๐Ÿคณ Shake-to-Toggle Functionality - Removed shake-to-show/hide floating button feature
  • ๐Ÿคณ Shake-to-Enable Functionality - Removed shake-to-enable logger when disabled feature
  • โš™๏ธ Shake Configuration Options - Removed enableShakeToShowHideFloatingButton, enableShakeToEnableLogger, and shakeSensitivity from FloatingLoggerConfig

Changed #

  • ๐Ÿ“– Updated Documentation - Removed all shake-related references from README.md and example documentation
  • ๐Ÿงน Code Cleanup - Simplified floating logger configuration without shake-related parameters
  • ๐Ÿ“ฑ Example App - Updated example app to use simplified configuration without shake features

Technical #

  • ๐Ÿ—๏ธ Reduced Dependencies - Smaller package footprint by removing shake dependency
  • ๐ŸŽฏ Simplified Configuration - Cleaner API surface without shake-related configuration options
  • ๐Ÿ“ฆ Package Size Optimization - Reduced overall package size and complexity

1.2.1 - 2024-10-23 #

  • updated README.md with new screenshots

1.2.0 - 2024-10-23 #

๐ŸŽ‰ Major UI Overhaul - Unified Logger Experience #

This release introduces a completely redesigned logging experience with a unified interface that combines both general and API logs in one seamless view.

Added #

  • ๐ŸŽฏ Unified Logger Interface - New AwesomeLoggerHistoryPage combines general and API logs in chronological order
  • ๐Ÿ” Advanced Filtering System - Expandable filter sections with smart sub-filters for logger levels and API methods
  • ๐Ÿ“Š Intelligent Statistics - Real-time statistics with clickable filtering capabilities
  • ๐ŸŽจ Enhanced Visual Design - Modern card-based layout with improved readability and navigation
  • โšก Smart Filter Management - Collapsible filter sections with active filter indicators
  • ๐Ÿ”„ Improved Sorting - Better sort toggle with visual feedback and intuitive controls

Changed #

  • ๐Ÿš€ Simplified API - Removed separate tab-based UI in favor of unified chronological view
  • ๐Ÿ“ฑ Better Mobile Experience - Optimized layout for all screen sizes with responsive design
  • ๐ŸŽฏ Streamlined Navigation - Single entry point for all logging functionality
  • ๐Ÿ“– Updated Documentation - README and examples now reflect the new unified approach

Removed #

  • โš ๏ธ Breaking Change: Removed LoggerHistoryPage - use AwesomeLoggerHistoryPage instead
  • โš ๏ธ Breaking Change: Removed separate ApiLogsTab and GeneralLogsTab widgets
  • ๐Ÿงน Code Cleanup - Removed unused filter chip components and redundant UI files

Fixed #

  • ๐Ÿ”ง Flutter Analyze Issues - Fixed all deprecated withOpacity usage, replaced with withValues
  • ๐Ÿ› Unused Variable Warnings - Removed unused local variables in statistics calculation
  • ๐Ÿ“ Code Style Issues - Added proper curly braces and removed unnecessary this. qualifiers

Technical #

  • ๐Ÿ—๏ธ Unified Architecture - Single page handles all log types with smart filtering
  • ๐Ÿ“Š Performance Improvements - More efficient log rendering and filtering
  • ๐ŸŽฏ Better State Management - Improved filter state handling and UI updates
  • ๐Ÿงช Enhanced Testing - All tests pass with zero analysis issues

Migration Guide #

// Old way (no longer available)
Navigator.push(context, MaterialPageRoute(
  builder: (context) => const LoggerHistoryPage(),
));

// New way (recommended)
Navigator.push(context, MaterialPageRoute(
  builder: (context) => const AwesomeLoggerHistoryPage(),
));

1.1.2 - 2024-10-16 #

  • made sort logs toggle button to api and general logs tabs more intuitive and user-friendly

1.1.1 - 2024-10-16 #

  • updated README.md for better clarity, readability and formatting

1.1.0 - 2024-10-16 #

  • updated example app pubspec.yaml with sdk: ">=3.0.0 <4.0.0"

1.0.10 - 2024-10-16 #

  • updated README.md to show screenshots properly

1.0.9 - 2024-10-16 #

Improved README Documentation #

  • ๐Ÿ“– Enhanced README Documentation - Complete overhaul of README with professional formatting and responsive design
  • โšก Easiest Setup Guide - Added ultra-simple 2-line setup instructions with MaterialApp example
  • ๐Ÿ“ฑ Mobile-Responsive Screenshots - Images now stack vertically on mobile devices with CSS media queries
  • ๐ŸŽฏ Professional Layout - Replaced centered table layouts with clean, left-aligned professional sections
  • ๐Ÿ“‹ Comprehensive Logging Guides - Detailed explanations for both API logs and general logs tabs
  • โœจ Enhanced Features Table - Added long press floating button feature with 4 detailed interaction methods
  • ๐ŸŽจ Modern Badges and Styling - Updated to for-the-badge style badges with Flutter/Dart technology indicators
  • ๐Ÿ“š Improved Navigation - Added collapsible table of contents and better section organization
  • ๐Ÿ”ง Better Code Examples - More practical examples with real-world usage patterns and best practices

1.0.8 - 2024-10-16 #

Added #

  • ๐Ÿ’ฌ Simple Error Display - Shows navigation error directly in the floating logger widget when navigation fails
  • ๐Ÿ“– Better Developer Experience - Navigation errors now show both console output and visual in-widget message

Fixed #

  • ๐Ÿ”ง Navigation Context Issues - Simplified error handling with reliable in-widget display and console output
  • ๐ŸŽฏ Error Visibility - Users will always see navigation errors with clear instructions and code examples

1.0.7 - 2024-10-16 #

Added #

  • ๐Ÿ’ฌ User-Friendly Error Dialog - Added helpful dialog that appears when navigation fails, showing step-by-step solution
  • ๐Ÿ“– Better Developer Experience - Navigation errors now show both console output and visual dialog with code examples

Improved #

  • ๐ŸŽฏ Error Handling - Enhanced navigation error reporting with clear instructions and selectable documentation link

1.0.6 - 2024-10-16 #

Fixed #

  • ๐Ÿ”ง Navigator Key Handling - Improved navigation logic to properly handle cases where navigatorKey.currentState is null
  • ๐Ÿ“ฑ Navigation Robustness - Better fallback mechanism when provided navigator key is not ready yet

1.0.5 - 2024-10-16 #

Fixed #

  • ๐Ÿ”ง Flutter Compatibility - Replaced Color.withValues() with Color.withOpacity() for better compatibility with older Flutter versions
  • ๐Ÿ“ฑ iOS Build Fix - Fixed Xcode build errors related to undefined withValues method

1.0.4 - 2024-10-16 #

Fixed #

  • ๐Ÿ”ง Path Dependency Compatibility - Changed path dependency from ^1.9.1 to ^1.9.0 to be compatible with Flutter SDK 3.24.5
  • ๐Ÿ“ฆ Flutter SDK Compatibility - Fixed version solving issues with flutter_test dependency conflicts

1.0.3 - 2024-10-16 #

Changed #

  • ๐Ÿ”ง Dart SDK Compatibility - Lowered minimum Dart SDK requirement from ^3.8.1 to >=3.0.0 <4.0.0
  • ๐Ÿ“ฆ Wider Compatibility - Package now works with Dart SDK 3.0.0 and above, including 3.5.x versions

Fixed #

  • ๐Ÿ› Dependency Resolution - Fixed version solving issues for projects using Dart SDK < 3.8.1

1.0.2 - 2024-10-15 #

Changed #

  • โœจ Synchronous Methods - Removed unnecessary async/await from visibility and preference methods
  • ๐Ÿ“Š Better Performance - Visibility methods are now synchronous since they don't perform async operations
  • ๐ŸŽฏ Cleaner API - No need for await when checking visibility or toggling

1.0.1 - 2024-10-15 #

Added #

  • ๐Ÿ“– Additional Methods - getSavedPosition(), savePosition(), clearPreferences(), initialize() now available through FlutterAwesomeLogger

## [1.0.0] (2024-10-15)

### ๐ŸŽ‰ Major Release - Stable API

This release marks the first stable version of Flutter Awesome Logger with a clean, production-ready API.

### Added
- ๐Ÿญ **Factory Pattern Implementation** - Clean access to logger through `FlutterAwesomeLogger.loggingUsingLogger`
- ๐ŸŽฏ **Simplified API** - Single entry point for logger access without exposing internal implementation
- ๐Ÿ“– **Enhanced Documentation** - Updated README with comprehensive factory pattern examples
- ๐Ÿ”ง **Better Encapsulation** - Internal logging classes are no longer directly exposed

### Changed
- ๐Ÿš€ **New Recommended Usage** - `final logger = FlutterAwesomeLogger.loggingUsingLogger;`
- ๐Ÿ“ฆ **Cleaner Exports** - Only necessary classes and configs are exported
- ๐Ÿ“š **Updated Examples** - All code examples now use the new factory pattern
- ๐ŸŽจ **Improved Developer Experience** - More intuitive API design

### Technical
- ๐Ÿ—๏ธ **Static Getter Implementation** - Added static `loggingUsingLogger` getter to `FlutterAwesomeLogger` widget class
- ๐Ÿงน **Code Cleanup** - Removed unnecessary factory classes and simplified architecture
- ๐Ÿ“Š **Maintainability** - Easier to maintain and extend in future versions

### Migration Guide
If you were using the logger directly:
```dart
// Old way (still works but not recommended)
import 'package:flutter_awesome_logger/src/core/logging_using_logger.dart';
final logger = LoggingUsingLogger();

// New way (recommended)
import 'package:flutter_awesome_logger/flutter_awesome_logger.dart';
final logger = FlutterAwesomeLogger.loggingUsingLogger;

All existing functionality remains the same - only the access pattern has been improved.

0.1.9 - 2024-10-14 #

Added #

  • ๐Ÿคณ Shake to Enable Logger - Shake your device to enable the entire logger system when it's disabled (perfect for production builds)
  • ๐ŸŽฏ Dual Shake Detection System - Separate detectors for toggle visibility vs enable logger functionality
  • ๐Ÿ—๏ธ Smart State Management - Automatic switching between shake detectors based on logger state

Changed #

  • ๐Ÿ”„ Updated Shake Package - Upgraded to shake ^3.0.0 with improved callback signatures
  • ๐Ÿ“ Clearer Property Names - Renamed enableShakeToToggle to enableShakeToShowHideFloatingButton and enableShakeToEnable to enableShakeToEnableLogger
  • ๐ŸŽจ Enhanced Configuration - More descriptive parameter names for better developer experience

Fixed #

  • ๐Ÿ› Flutter Analyze Issues - Fixed all linting errors and warnings
  • ๐Ÿ”ง Callback Type Compatibility - Updated shake detector callbacks to match new package API
  • ๐Ÿ“– Documentation Updates - Corrected interceptor class name and updated version references

Technical #

  • ๐Ÿ—๏ธ Proper Resource Management - Only one shake detector active at a time for optimal performance
  • ๐ŸŽฏ Type Safety - Improved type checking and eliminated unnecessary type assertions
  • ๐Ÿ“Š Code Quality - All Flutter analyze checks pass with zero issues

0.1.8 - 2024-10-14 #

Added #

  • ๐ŸŽฏ Shake to Toggle - Shake your device to show/hide the floating logger button(Only active when logger is enabled)

0.1.7 - 2024-10-14 #

Added #

  • โธ๏ธ Pause/Resume Logging - Global pause state that temporarily stops all logging (console output and storage)
  • ๐ŸŽฏ Visual Pause Indicators - Floating button changes color/icon when logging is paused, plus banner in logger history
  • ๐ŸŽฎ Pause Controls - Long press floating button opens options menu with pause/resume, plus dedicated button in app bar
  • ๐Ÿ”„ Async Logger Initialization - enabled parameter now accepts FutureOr<bool> for conditional initialization
  • ๐Ÿ—๏ธ Simplified API - Removed unnecessary storeLogs and autoInitialize parameters

Changed #

  • ๐Ÿš€ Unified Control - Single enabled parameter now controls both floating logger visibility AND log storage
  • ๐Ÿ“ฑ Enhanced Floating Logger - Better visual feedback and more intuitive controls
  • ๐ŸŽจ Improved UI - Pause banner in logger history page with clear messaging and quick resume action
  • ๐Ÿ“– Updated Documentation - Cleaner examples and better explanations of async capabilities

Fixed #

  • ๐Ÿ› API Logging Pause Issue - API logs now properly respect the global pause state
  • ๐ŸŽฏ Configuration Simplification - Removed confusing parameters that served no real purpose
  • ๐Ÿ”ง Code Cleanup - Removed dead code and unnecessary complexity

Breaking Changes #

  • โš ๏ธ AwesomeLoggerConfig.storeLogs removed - Use FlutterAwesomeLogger.enabled to control storage
  • โš ๏ธ FlutterAwesomeLogger.autoInitialize removed - No longer needed
  • โš ๏ธ FlutterAwesomeLogger.enabled type changed - Now accepts FutureOr<bool> instead of bool

Technical #

  • ๐Ÿ—๏ธ Future Resolution - Proper async handling in widget lifecycle
  • ๐ŸŽฏ State Management - Improved pause state synchronization across UI components
  • ๐Ÿ“Š Performance - Cleaner initialization logic and reduced unnecessary operations

0.1.6 - 2024-10-14 #

  • updated dependencies and flutter analysis fixes.

0.1.5 - 2024-10-13 #

Added #

  • added screenshots showcasing the flutter_awesome_logger capabilities to README.md

0.1.4 - 2024-10-13 #

Added #

  • ๐ŸŽฏ Comprehensive unfocus functionality - Search field unfocuses on all interactions
  • ๐Ÿ”„ Smart keyboard management - Dismisses keyboard when scrolling, tapping buttons, or interacting with UI
  • ๐Ÿ“ฑ Enhanced mobile UX - Follows platform conventions for keyboard behavior

Fixed #

  • ๐Ÿ”ง Layout issues in example app - Fixed ParentDataWidget errors and pixel overflow
  • ๐ŸŽจ Responsive design improvements - Better layout handling for different screen sizes
  • ๐Ÿ“œ SingleChildScrollView integration - Proper scrolling behavior without layout conflicts

Improved #

  • โŒจ๏ธ Keyboard interaction patterns - Consistent unfocus behavior across all tabs
  • ๐ŸŽฏ Touch interactions - All buttons, filters, and controls dismiss keyboard automatically
  • ๐Ÿ“Š User experience - Smoother navigation and interaction flow

Technical #

  • ๐Ÿ—๏ธ Widget hierarchy fixes - Resolved Expanded/Flex widget constraint issues
  • ๐Ÿ“ฑ Scroll view optimization - Proper handling of unbounded height constraints
  • ๐ŸŽฏ Event handling - Added FocusScope management to all interactive elements

0.1.3 - 2024-10-13 #

Changed #

  • ๐Ÿšซ Removed SharedPreferences dependency - No longer stores logs or preferences locally
  • ๐Ÿ”„ In-memory storage - Visibility and position are now stored only for current session
  • ๐Ÿ“ฆ Lighter package - Reduced dependencies for better performance

Breaking Changes #

  • โš ๏ธ Persistent storage removed - Floating logger position and visibility reset on app restart
  • ๐Ÿ“ฑ Session-only state - All preferences are cleared when app closes

0.1.2 - 2024-10-13 #

  • added correct usage of navigator key in debug print and example app

0.1.1 - 2024-10-13 #

  • refactor: rename AwesomeLoggerInterceptor to FlutterAwesomeLoggerDioInterceptor

0.1.0 - 2024-10-13 #

Added #

  • Initial release of Flutter Awesome Logger
  • Core logging functionality with configurable options
  • Floating logger button with draggable interface
  • Automatic API logging with Dio interceptor
  • Beautiful UI for viewing log history
  • Support for multiple log levels (debug, info, warning, error, verbose)
  • Persistent log storage using SharedPreferences
  • Search and filter capabilities in log viewer
  • Customizable floating button appearance
  • Comprehensive configuration options
  • Example app demonstrating all features

Features #

  • ๐Ÿ“ฑ Floating logger button that stays accessible
  • ๐ŸŒ Automatic API request/response logging
  • ๐ŸŽจ Modern, clean UI design
  • ๐Ÿ“Š Multiple log levels with color coding
  • ๐Ÿ’พ Persistent storage across app sessions
  • ๐Ÿ” Search and filter functionality
  • ๐ŸŽฏ Highly configurable settings
  • ๐Ÿ“ฑ Responsive design for all screen sizes
3
likes
140
points
66
downloads

Publisher

unverified uploader

Weekly Downloads

Lightweight debugging with floating logger, automatic API logging (using interceptor), Flutter general logging, class-based filtering, scoped logger mixin, smart copy options, and a beautiful UI for viewing logs.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

dio, flutter, logger, path

More

Packages that depend on flutter_awesome_logger